正在使用 apache-hive-0.13.1。 在创建表配置单元时抛出如下错误
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Cannot validate serde: com.cloudera.hive.serde.JSONSerDe
表结构为
create external table tweets(id BigInt, created_at String, scource String, favorited Boolean, retweet_count int,
retweeted_status Struct <
text:String,user:Struct<
screen_name:String, name:String>>,
entities Struct<
urls:Array<Struct<
expanded_url:String>>,
user_mentions:Array<Struct<
screen_name:String,
name:String>>,
hashtags:Array<Struct<text:String>>>,
text String,
user Struct<
screen_name:String,
name:String,
friends_count:int,
followers_count:int,
statuses_count:int,
verified:boolean,
utc_offset:int,
time_zone:String> ,
in_reply_to_screen_name String)
partitioned by (datehour int)
ROW FORMAT SERDE 'com.cloudera.hive.serde.JSONSerDe'
location '/home/edureka/sachinG'
在类中添加了一个 json-serde-1.3.6-SNAPSHOT-jar-with-dependencies.jar
来解决问题但没有成功
最佳答案
终于找到了解决办法。问题出在 json-serde-1.3.6-SNAPSHOT-jar-with-dependencies.jar
不同的发行版(Cloudera、Azure 等)需要不同的 JSON-Serde jar 文件。意味着,serde jar 应该与那里的发行版兼容。
我换了 jar,它对我有用。
关于java - Hive 在创建表 "Cannot validate serde: com.cloudera.hive.serde.JSONSerDe"时抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36709298/