2016-04-27 119 views
0

设备将向Azure Eventhub发送多条消息(仍未确定)。每个消息将有不同的格式和内容(虽然需要不同的处理)。每个消息将包含一个唯一的ServiceID,标识哪种类型的味精。风暴拓扑:多对一

我们现在有两种情况记住如何处理它。

一个) 1.脱粒机将接收MSG并将它传递给一个ParserBolt 2. ParserBolt将读取服务ID并且基于该ID将它传递给不同的螺栓

在这种情况下,每个MSG(基于ServiceID)将通过拓扑中的不同路径。所有消息都可以由一个拓扑处理。

b) 1.多个拓扑 - 每个ServiceID一个。 2.脱粒机将收到味精,并将它传递给博尔特 3博尔特将读取的服务ID - 如果正确的服务ID将它传递给下一个螺栓,如果由于Storm保证每个味精是不正确的服务ID将关闭此工作

至少处理过一次 - 每个msg都会在某个点出现正确的拓扑结构。但是拓扑结构会忽略许多不适合他们的信息。

+0

嘿埃里克,欢迎来到stackoverflow。你的问题相当开放,没有明确的答案。你可以重新提出一个更具体的问题吗?请参阅[这里了解更多信息](http://stackoverflow.com/help/dont-ask) –

回答

0

如果你不能在Storm之外划分你的输入流,你应该使用单一的拓扑结构。这将节省大量的网络流量和不必要的数据复制。