Flink Window中的 inner joinleft joinright join
本文开头附:Flink 学习路线系列 ^ _ ^
Flink 中的两个流,也是可以实现 Join 操作的。如果两个流要实现 Join 操作,必须满足以下两点:
流需要能够等待,即:两个流必须在同一个窗口中; 双流等值 Join,即:两个流中,必须有一个字段相等才能够 Join 上。 1.Flink 中支持 双流join 的算子Flink 中支持双流 Join 的算子目前已知有5种,如下:
union:union 支持双流 Join,也支持多流 Join。多个流类型必须一致; connector:connector 支持双流 Join,两个流的类型可以不一致; join:该方法只支持 inner join,即:相同窗口下,两个流中,Key都存在且相同时才会关联成功; coGroup:同样能够实现双流 Join。即:将同一 Window 窗口内的两个DataStream 联合起来,两个流按照 Key 来进行关联,并通过 apply()方法 new CoGroupFunction() 的形式