我在 Flink 中有一个用户案例,我需要连接到 2 个广播流来执行某个 KeyedProcessFunction 操作。 Flink允许这样做吗?我看不到任何支持单个广播流的 API
ProcessFunction
。
如何在 Flink 中实现上述用例?
我不认为 Flink 支持在单个算子内连接多个流(多个)。我认为最传统的模式是简单地将多个广播流在您的工作中连续链接到相关的处理函数:
streamEnv
.connect(broadcastStream1)
.process(...)
.connect(broadcastStream2)
.process(...)
如果您需要两个基于广播的元素进行交互,则可能需要丰富或包含第一个广播流中的某些组件,以便它可以与第二个流的元素连接。