问题描述
为了理解 Apache Storm 的字段分组,我想创建一个单独的 spout,它会向一个 bolt 发出很少的固定线。螺栓(我们称之为发射器)反过来会发射单词和一个标签(用 Storm 的话来说是一个字段)说“单词”。在下一层,我想设置三个螺栓(称它们为计数器) - 期望每个计数器在 spout 产生它们时接收相同的单词。但我从没想过会为所有计数器提供相同的词 - 这令人惊讶的是以下拓扑发生的情况。
TopologyBuilder builder = new TopologyBuilder();
builder.setSpout("reader",new ReaderSpout());
builder.setBolt("emitter",new EmitterBolt()).shuffleGrouping("reader");
builder.setBolt("counter1",new CounterBolt(),1)
.fieldsGrouping("emitter",new Fields("WORD"));
builder.setBolt("counter2",1)
.fieldsGrouping("emitter",new Fields("WORD"));
builder.setBolt("counter3",new Fields("WORD"));
任何帮助将不胜感激。 我的主要目标是理解 'fieldsGrouping' 的用处,而软目标是有两个反螺栓,一个接收以元音开头的单词,另一个接收以辅音开头的单词。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)