请参阅此链接。一段时间前,当我试图做同样的事情时,我帮了我很多忙。基本上,你必须做以下工作:
- 在https://dev.twitter.com/apps/中创建一个应用程序,以生成OAuth键。这一步可能已经完成了,因为你说你过去已经询问过Twitter了。
- 从这里下载专门为Twitter设计的Cloudera源代码,并通过编辑
conf/flume-env.sh并添加以下行将此类jar放入水槽类路径:
FLUME_CLASSPATH="/home/training/Installations/apache-flume-1.3.1-bin/flume-sources-1.0-SNAPSHOT.jar“ - 为名为"TwitterAgent“的新Twitter代理编辑一个Flume配置文件,如下所示:
TwitterAgent.sources = Twitter TwitterAgent.channels = MemChannel TwitterAgent.sinks = HDFS TwitterAgent.sources.Twitter.type = com.cloudera.flume.source.TwitterSource TwitterAgent.sources.Twitter.channels = MemChannel TwitterAgent.sources.Twitter.consumerKey = TwitterAgent.sources.Twitter.accessToken = TwitterAgent.sources.Twitter.keywords = TwitterAgent.sinks.HDFS.channel = MemChannel TwitterAgent.sinks.HDFS.type = hdfs TwitterAgent.sinks.HDFS.hdfs.path = hdfs://localhost:9000/user/flume/tweet/ TwitterAgent.sinks.HDFS.hdfs.fileType = DataStream TwitterAgent.sinks.HDFS.hdfs.writeFormat = Text TwitterAgent.sinks.HDFS.hdfs.batchSize = 1000 TwitterAgent.sinks.HDFS.hdfs.rollSize =0 TwitterAgent.sinks.HDFS.hdfs.rollCount = 10000 TwitterAgent.channels.MemChannel.type =内存TwitterAgent.channels.MemChannel.capacity = 10000 TwitterAgent.sinks.HDFS.hdfs.writeFormat= 100
然后,您可以通过发出以下命令来启动Twitter Flume代理:
$ bin/flume-ng agent --conf ./conf/ -f conf/flume.conf -Dflume.root.logger=DEBUG,console -n TwitterAgent