
Window Join 可以方便地对两个数据流进行关联操作。但有些使用场景中,我们需要的并非关联操作,
ConnectedStreams
提供了更为通用的双流操作。
ConnectedStreams
配合
CoProcessFunction
或
KeyedCoProcessFunction
使用,
KeyedCoProcessFunction
要求连接的两个 stream 都是
KeyedStream
,并且 key 的类型一致。
ConnectedStreams
配合
CoProcessFunction
生成
CoProcessOperator
,在运行时被调度为
TwoInputStreamTask
,从名字也可以看书来,这个 Task 处理的是两个输入。
TwoInputStreamTask
在前面关于 Task 的生命周期的文章中已经进行了介绍。我们简单看一下
CoProcessOperator
的实现: