了解 Flink Interval Joins 中大窗口的事件发射时序

问题描述 投票:0回答:1

间隔连接使用公共密钥连接两个流的元素,其中流 B 的元素的时间戳位于流 A 中元素的时间戳的相对时间间隔内。

我很困惑联合事件的发出频率。连接需要指定下限和上限来定义窗口。如果下限和上限很大,例如 7 天,这是否意味着窗口只会每 7 天触发一次?我知道这是有水印驱动的,但与翻滚窗口连接之类的东西相比,它的工作原理还不清楚。

作为后续问题,如何使流 A 的事件和流 B 的事件在 Flink 的状态下存活 7 天,然后在 2 个事件加入后(如果它们落在指定的范围内)立即发出事件?

apache-flink flink-streaming
1个回答
0
投票

一旦可以连接在一起的输入到达,间隔连接就会立即发出结果。水印仅用于从状态存储中清除不再影响结果的事件。换句话说,间隔连接与常规连接相同,只是运行时不必永远保持每一行的状态。

© www.soinside.com 2019 - 2024. All rights reserved.