在Heron中同步多个喷嘴和螺栓

时间:2018-11-16 14:40:46

标签: python heron

我正在使用Heropy。我的拓扑结构是另一种方式:

Spout1-> Bolt1-> Bolt2

Spout2 ---------> Bolt2

因此,Bolt2需要来自Spout2和Bolt1的信息才能发出结果,但是来自Spout2的信息要比来自Bolt1的信息快,而Bolt2必须等待直到同时拥有Spout2和Bolt1的信息。如何使用Heron API同步信息流,以便Bolt2仅在所有可用信息后才发出结果?

2 个答案:

答案 0 :(得分:0)

通常,流中不保证顺序/同步。我觉得spout1和spout2本身很难100%同步。

我认为您可以考虑以下一种选择:将bolt1钩到spout2并直接从spout2发出元组,将bolt2与spout2断开连接。这样,bolt1便成为排序的真相。

开窗可能是另一种选择,但需要更多注意事项并起作用。

答案 1 :(得分:0)

Heron不会自动同步来自不同组件的元组。因此,您将需要缓冲Spout2中的元组,并等待直到Bolt1中的相应元组到达,然后进行计算。