【发布时间】:2015-11-27 02:24:07
【问题描述】:
我已经阅读了有关风暴并行的相关资料,但仍有一些不清楚的地方。假设我们以 Tweets 处理为例。一般来说,我们正在做的是检索推文流,计算每条推文的字数并将这些数字写入本地文件。
我的问题是如何理解 spout 和 bolts 的并行性的价值。在 builder.setSpout 和 builder.setBolt 的函数中,我们可以分配并行值。但是在推文的字数统计中,只设置一个 spout 是否正确?多个 spout 被视为第一个相同 spout 的副本,相同的推文通过该 spout 流入多个 spout。如果是这种情况,设置多个 spout 的价值是什么?
另一个不清楚的点是如何将作品分配给螺栓?以 Storm 的方式实现的并行机制是否会找到当前可用的螺栓来处理下一个发射喷口?我修改了基本的推文计数代码,因此最终的计数结果将写入特定目录,但是,所有结果实际上都合并在 nimbus 上的一个文件中。因此,在主管处理数据后,所有结果都将发送回 nimbus。如果这是真的,nimbus 和 supervisor 之间的通信机制是什么?
我真的很想弄清楚那些问题!!!感谢您的帮助!
【问题讨论】:
-
我不明白你的最后一个问题:“我修改了基本的推文计数代码,因此最终的计数结果将写入特定目录,但是,所有结果实际上都合并在 nimbus 上的一个文件中. 因此,在supervisors上处理完数据后,所有结果都会被发送回nimbus。如果这是真的,nimbus和supervisors之间的通信机制是什么?"
标签: parallel-processing apache-storm