先生,我想使用Apache hive,flume进行Twitter数据的情绪分析现在我有一个Twitter帐户,我已经设置了conf文件。但问题在于数据格式。它不是装在蜂房里。请帮助我,我在这里工作了一个月。
答案 0 :(得分:0)
我认为您可以配置Flume代理从Twitter获取数据。您的问题是格式的数据。
Apache Flume提供了几种接收器类型。其中两个对您的要求很有用。
使用HDFS接收器
JSON SerDe代码链接:https://github.com/cloudera/cdh-twitter-example/blob/master/hive-serdes/src/main/java/com/cloudera/hive/serde/JSONSerDe.java
使用Hive Sink:
Flume允许使用Hive Sink将数据写入Hive表。所以我们需要按如下方式配置Flume代理:
TwiiterSource --> Channel --> Hive Sink
Hive Sink有一个名为 序列化器 的参数来告诉SerDe的类型。
支持序列化程序: DELIMITED 和 JSON
因此,请使用上述任何一种解决方案配置您的Flume代理。
请使用此文档链接获取有关接收器参数(HDFS + Hive)
的更多详细信息答案 1 :(得分:0)
您可以尝试添加此jar文件
hive-serdes-1.0-SNAPSHOT.jar
您可以按照以下博客获取使用Hive执行情绪分析的完整参考。
https://acadgild.com/blog/sentiment-analysis-on-tweets-with-apache-hive-using-afinn-dictionary/