Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未在配置单元中查询Twitter Json数据_Json_Hadoop_Twitter_Hive - Fatal编程技术网

未在配置单元中查询Twitter Json数据

未在配置单元中查询Twitter Json数据,json,hadoop,twitter,hive,Json,Hadoop,Twitter,Hive,我尝试使用Flume、Hadoop和Hive进行twitter情绪分析。 我正在关注这一点。通过使用Flume,我成功地将推文发送到HDFS。这是我的Twitter代理配置 #设置代理的属性 Twitter agent.sources=source1 Twitter agent.channels=channel1 Twitter agent.sinks=sink1 #配置源 Twitter agent.sources.source1.type=com.cloudera.flume.source

我尝试使用Flume、Hadoop和Hive进行twitter情绪分析。 我正在关注这一点。通过使用Flume,我成功地将推文发送到HDFS。这是我的Twitter代理配置

#设置代理的属性
Twitter agent.sources=source1
Twitter agent.channels=channel1
Twitter agent.sinks=sink1
#配置源
Twitter agent.sources.source1.type=com.cloudera.flume.source.TwitterSource
Twitter agent.sources.source1.channels=channel1
Twitter-agent.sources.source1.consumerKey=
Twitter-agent.sources.source1.ConsumerCret=
Twitter-agent.sources.source1.accessToken=
Twitter-agent.sources.source1.accessTokenSecret=
Twitter agent.sources.source1.keywords=早上、晚上、hadoop、bigdata
#配置通道
Twitter agent.channels.channel1.type=内存
Twitter代理.channels.channel1.capacity=10000
Twitter代理.channels.channel1.transactionCapacity=100
#配置接收器
Twitter agent.sinks.sink1.channel=channel1
Twitter agent.sinks.sink1.type=hdfs
Twitter agent.sinks.sink1.hdfs.path=flume/tweets
Twitter agent.sinks.sink1.rollSize=0
Twitter agent.sinks.sink1.rollCount=10000
Twitter agent.sinks.sink1.batchSize=1000
Twitter agent.sinks.sink1.fileType=DataStream

Twitter agent.sinks.sink1.writeFormat=Text
SerDe是序列化程序/反序列化程序的缩写。Hive将SerDe接口用于IO。json是众多格式中受支持的一种。我可以在错误消息中看到serde异常和json。因此,它与编组和解编组配置单元表列中的json数据有关。确定要将json数据添加到哪个列中。快乐编码

SerDe是序列化器/反序列化器的缩写。Hive将SerDe接口用于IO。json是众多格式中受支持的一种。我可以在错误消息中看到serde异常和json。因此,它与编组和解编组配置单元表列中的json数据有关。确定要将json数据添加到哪个列中。快乐编码

下载“HiveJSONSerde.jar”,并在查询任何包含serde数据(如json等)的表之前将其添加到HiveShell中

每次打开HiveShell时都必须这样做。

在查询任何包含serde数据(如json等)的表之前,下载“HiveJSON serde.jar”并将其添加到HiveShell中


每次打开Hive shell时都必须执行此操作。

您需要下载Hive-serdes-1.0-SNAPSHOT.jar并将其添加到Hive shell中,其中包含clodera提供的JSON serde。然后需要根据所需的列创建一个表

比如说

create external table load_tweets(id BIGINT,text STRING) ROW FORMAT SERDE 'com.cloudera.hive.serde.JSONSerDe' LOCATION '/user/flume/tweets'
要执行情绪分析,tweet_id和tweet_文本就足够了。现在如果你使用

select * from load_tweets;
然后,您可以在配置单元表中看到包含tweet_id和tweet_文本的数据

您可以参考下面的链接,在该链接中,情绪分析已通过屏幕截图进行了清楚的解释


您需要下载并将hive-serdes-1.0-SNAPSHOT.jar添加到您的hive外壳中,其中包含clodera提供的JSON serde。然后需要根据所需的列创建一个表

比如说

create external table load_tweets(id BIGINT,text STRING) ROW FORMAT SERDE 'com.cloudera.hive.serde.JSONSerDe' LOCATION '/user/flume/tweets'
要执行情绪分析,tweet_id和tweet_文本就足够了。现在如果你使用

select * from load_tweets;
然后,您可以在配置单元表中看到包含tweet_id和tweet_文本的数据

您可以参考下面的链接,在该链接中,情绪分析已通过屏幕截图进行了清楚的解释


首先尝试使用文本格式(选中),然后通过设置TwitterAgent.sinks.HDFS.HDFS.writeFormat=Text使用squence,我将其设置为文本格式!但是文件被存储为序列格式??如您的问题所示,我在问题中包含了Twitter-agent.conf文件的内容。请看一看。首先尝试使用文本格式(检查),然后通过设置TwitterAgent.sinks.HDFS.HDFS.writeFormat=Text使用squence,我将其设置为文本格式!但是文件被存储为序列格式??如您的问题所示,我在问题中包含了Twitter-agent.conf文件的内容。请看一看。