是否可以将消息广播到所有任务管理器中

问题描述 投票:0回答:2

我想知道如果特定事件从源中读取到所有任务管理器中,flink中是否有办法广播事件(或类似事件)。>>

更具体地说,我正在将状态数据与地图状态进行汇总,如果从源中读取了一些事件,我希望所有任务管理器都执行特定的操作

有可能吗?

我想知道如果特定事件从源中读取到所有任务管理器中,flink中是否有办法广播事件(或类似事件)。更具体地说,我正在汇总状态数据...

apache-flink flink-streaming flink-cep
2个回答
0
投票

是的,这是可能的。 broadcast state pattern正是用于这种用例。


0
投票

正如David指出的那样,使用广播流是将数据发送到所有(并行)子任务的正确方法。至于仅广播一些数据,请看一下side outputs作为对数据子集进行特殊处理的一种方式。因此,您可以有一个ProcessFunction传递所有未修改的数据,并且如果传入事件是要广播的事件,那么您也将其作为侧面输出发出。

© www.soinside.com 2019 - 2024. All rights reserved.