我的拓扑在第一次调用emit()后停止了

时间:2015-04-19 14:49:49

标签: java twitter analytics twitter4j apache-storm

我们正在开发Apache风暴项目,我们需要执行以下操作:

1 - 计算SA中每个城市的流式推文数量。   2 - 计算某些特定单词的频率(每个特定单词的计数)

我们使用了StormTweetsSentimentD3Viz-master的教程,我们可以用它来完成(1)。

但是,当我们尝试添加螺栓来计算tweet_words_count中的单词时,调用collector.emit(new Values(lang, word));

后整个拓扑停止了

我试图评论所有以前的螺栓,只运行splitterBolt,但它总是停止。

我也想问这个:   - 我可以在同一个Spout,两个不同的螺栓上运行,我的意思是那个执行(1)和(2)中的其他目标,如下所示:

    topologyBuilder.setSpout("twitterspout", new TwitterSpout());
    topologyBuilder.setBolt("statelocatorbolt", new StateLocatorBolt()).shuffleGrouping("twitterspout");
    topologyBuilder.setBolt("sentimentcalculatorbolt", new SentimentCalculatorBolt()).fieldsGrouping("statelocatorbolt", new Fields("state"));
    topologyBuilder.setBolt("jmsBolt", jmsBolt).fieldsGrouping("sentimentcalculatorbolt", new Fields("stateCode"));

    topologyBuilder.setBolt("WordSplitterBolt", new WordSplitterBolt()).shuffleGrouping("twitterspout");
    topologyBuilder.setBolt("IgnoreWordsBolt", new IgnoreWordsBolt()).shuffleGrouping("WordSplitterBolt");

请帮助解决问题所在。

谢谢

0 个答案:

没有答案