我使用Flume来获取Twitter数据。此数据作为avsc文件存储在hdfs中。我创建了avro架构文件" tweeter.avsc"并将其保存在hdfs中。 但是当我尝试使用下面的命令创建外部表时,我收到错误。
命令:
CREATE EXTERNAL TABLE tweeter
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'
LOCATION '/user/hive/warehouse/tweets2'
TBLPROPERTIES
('avro.schema.url'='http://localhost:50070/explorer.html#/user/cloudera/tweets.avsc');
但我得到一个错误:
FAILED:执行错误,返回代码1 org.apache.hadoop.hive.ql.exec.DDLTask。了java.lang.RuntimeException: MetaException(消息:org.apache.hadoop.hive.serde2.SerDeException 遇到异常确定模式。将信号模式返回到 表示问题:org.codehaus.jackson.JsonParseException:意外 字符('<'(代码60)):预期有效值(数字,字符串, 数组,对象,' true',' false'或者' null')在[来源: sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@7851cf69; line:1,column:2])
请帮忙。