意外的字符('O'(代码79)):期望一个有效值(数字,字符串,数组,对象,'真','假'或'空')如何解决这个问题?

时间:2018-03-10 19:08:18

标签: json hadoop hive flume

在进行Twitter情绪分析时,我遇到了这个错误,尽管为解决方案搜索了三天,我无法得到任何解决方案。

错误

hive> select * from load_tweets;
OK
Failed with exception java.io.IOException:org.apache.hadoop.hive.serde2.SerDeException: org.codehaus.jackson.JsonParseException: Unexpected character ('O' (code 79)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: java.io.StringReader@5a82bc58; line: 1, column: 2]
Time taken: 1.698 seconds
hive> 

这是表创建

hive> create external table load_tweets(id BIGINT,text STRING) ROW FORMAT SERDE 'com.cloudera.hive.serde.JSONSerDe' LOCATION '/user/flume/tweets'
    > ;

我正在使用Cloudera Json serde版本

json-serde-1.3.6-SNAPSHOT-jar-with-dependencies.jar

我已检查过jar文件是否已正确添加到hive类路径中。

数据库: http://freetexthost.com/ik4jyogkfm 这是由水槽提取的数据库。

我指的是这篇文章的数据提取 https://acadgild.com/blog/streaming-twitter-data-using-flume/

0 个答案:

没有答案