Flink join和connect有什么区别?

MJe*_*emy 5 apache-flink

我对这些定义感到困惑。在文档中,似乎join是在key定义之后,但是connect不需要指定key,其结果是connectedStream。我们可以做什么conenctedStream呢?有没有具体的例子,我们使用一个而不是另一个?

更多,connected stream看起来如何?

提前致谢

twa*_*thr 6

一个connect操作比联接操作更通用。Connect确保两个流(有键或无键)在同一位置(在内的同一并行实例)相遇CoXXXFunction

一个流可以是控制流,该控制流操纵应用于另一流的行为。例如,您可以引入新的机器学习模型或其他业务规则。

或者,您可以使用两个经过键控并在同一位置相遇的流的属性来加入。Flink提供了一些预定义的联接运算符

但是,数据流的加入通常取决于不同的用例特定行为,例如“您想等待另一个密钥到达多长时间?”,“您只寻找一对或多对匹配?”或“如果没有匹配记录到达或其他匹配记录不再以状态存储,是否有后期元素需要特殊处理?”。A connect()允许您根据需要实现自己的加入逻辑。这里的技术人员培训数据说明了用于连接的一个示例。