2017-01-14 4 views
0

avro serdeを使用して、ハイブテーブルを作成してツイッターデータを保存しています。実行エラー、org.apache.hadoop.hive.ql.exec.DDLTaskの戻りコード1を返します。 serdeを検証できません:org.apache.hadoop.hive.serde2.avro.AvroSerde

ここで私は、私はすでに地元とHDFSの両方のファイルシステムで

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

として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 

を取得していますコード -

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'); 

です同じエラーが発生しています。

答えて

0

エラーメッセージは、HiveがSerDe Javaクラスを検出しないことを示します。スキーマを読んでも気にしません...

「SerDe」は、シリアライザとデシリアライザの略称であるため、の大文字のDです。
タイプミスをAvroSerDeに修正してもう一度お試しください。

+0

私は大文字Dを試しました。問題はハイブSerDeクラスファイルが壊れていたことでした。 – vinay

関連する問題