我有左右两个流。 对于同一时间窗口,我们说
我想知道如何在Apache Flink中实现LEFT OUTER JOIN,以便在处理此窗口时获得的结果如下:
(L1, R1), (L2, null)
L1,R1通过键(1)匹配,而L2,R3不匹配。包含L2是因为位于左侧
答案 0 :(得分:1)
好吧,您应该能够使用coGroup
运算符并正确实现CoGroupFunction
来获得正确的结果。该函数使您可以通过coGroup
方法访问整个组。 documentation指出,对于CoGroupFunction
,其中一个组可能为空,因此应允许您实施外部联接。唯一的问题是当前在内存中创建了组,因此您需要验证组不会增长得太大,因为它们可以有效地杀死JVM。