多个flume twitter代理

kcugc4gi  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(306)

我正在学习hadoop、flume等,我开始的一个项目是情绪分析,这是可以的,但现在我试图通过收集多组数据来扩展,这是my flume.conf:

TwitterAgent.sources = Twitter
    TwitterAgent.channels = MemChannel
    TwitterAgent.sinks = HDFS HDFS2
    TwitterAgent.sources.Twitter.type = com.cloudera.flume.source.TwitterSource
    TwitterAgent.sources.Twitter.channels = MemChannel
    TwitterAgent.sources.Twitter.consumerKey = xxx
    TwitterAgent.sources.Twitter.consumerSecret = xxxx
    TwitterAgent.sources.Twitter.accessToken = xxx
    TwitterAgent.sources.Twitter.accessTokenSecret = xxxx
    TwitterAgent.sources.Twitter.keywords = bbc
    TwitterAgent.sinks.HDFS.channel = MemChannel
    TwitterAgent.sinks.HDFS.type = hdfs
    TwitterAgent.sinks.HDFS.hdfs.path = hdfs://xxx:8020/user/flume/tweets/
    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 = memory
    TwitterAgent.channels.MemChannel.capacity = 10000
    TwitterAgent.channels.MemChannel.transactionCapacity = 100

我希望实现的是把所有关于bbc的tweet放在上面的位置,同时使用下面的配置将关于利物浦的tweet放在一个单独的文件夹中:

TwitterAgent.sources.Twitter.keywords = liverpool
    TwitterAgent.sinks.HDFS2.channel = MemChannel
    TwitterAgent.sinks.HDFS2.type = hdfs
    TwitterAgent.sinks.HDFS2.hdfs.path = hdfs://xxx:8020/user/flume/tweets/liverpool/
    TwitterAgent.sinks.HDFS2.hdfs.fileType = DataStream
    TwitterAgent.sinks.HDFS2.hdfs.writeFormat = Text
    TwitterAgent.sinks.HDFS2.hdfs.batchSize = 1000
    TwitterAgent.sinks.HDFS2.hdfs.rollSize = 0
    TwitterAgent.sinks.HDFS2.hdfs.rollCount = 10000
    TwitterAgent.channels.MemChannel2.type = memory
    TwitterAgent.channels.MemChannel2.capacity = 10000
    TwitterAgent.channels.MemChannel2.transactionCapacity = 10

这不起作用,我也不明白为什么,有人能给我指出正确的方向吗?

ttp71kqs

ttp71kqs1#

这个答案可能有点晚了,但我认为它不起作用,因为使用同一个应用程序,你只能有一个到twitter流媒体api的打开连接。
https://dev.twitter.com/discussions/14935
https://dev.twitter.com/discussions/7542
@kurrik arne roomann kurrik您正在使用哪个流媒体端点?
对于一般流,您应该只从同一ip建立一个连接。对于userstreams,来自同一ip的一个或两个连接。对于站点流,支持多个连接(请注意,站点流仍处于有限的beta版本)。

相关问题