执行错误,从org.apache.hadoop.hive.ql.exec.ddltask返回代码1无法验证serde:org.apache.hadoop.hive.serde2.avro.avroserde

bogh5gae  于 2021-06-28  发布在  Hive
关注(0)|答案(1)|浏览(443)

我正在使用创建配置单元表 avro serde 存储twitter数据。
这是密码-

create table tweets
    row format serde
    'org.apache.hadoop.hive.serde2.avro.AvroSerde'
    stored as inputformat
    'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
    outputformat
    'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat'
 tblproperties('avro.schema.url'='hdfs://user/itelligence/ee/TwitterDataAvroSchema.avsc');

我犯了个错误-

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. 
Cannot validate serde: org.apache.hadoop.hive.serde2.avro.AvroSerde

我已经试过把avsc文件的输入作为

tblproperties('avro.schema.url'='hdfs:///user/itelligence/ee/TwitterDataAvroSchema.avsc');
tblproperties('avro.schema.url'='file://user/itelligence/schema/TwitterDataAvroSchema.avsc');

在本地和hdfs文件系统中,我都会遇到相同的错误。

pieyvz9o

pieyvz9o1#

错误消息指出配置单元找不到serde java类。它甚至不费心去阅读模式。。。
请注意,“serde”的大写字母是d,因为它代表序列化程序反序列化程序。
所以只要把你的排版改一下就行了 AvroSerDe 再试一次。

相关问题