Flink 水印简单理解

Myth丶恋晨 2021-12-05 20:45 353阅读 0赞

看下图: 为啥只有一个触发, WaterMark 时间 >= window结束时间 第一条日志 时间16:25:24 正好在 window [16:25:20 16:25:25) 里面,所以触发了,这里设置的水印延迟时间为10s 。

最后一条数据为什么没有触发,因为这个时候 window [16:25:25 16:25:30),水印时间已经来到; 16:25:27 ,到达了第二条日志时间,然而

WaterMark 时间(16:25:27) < window结束时间(16:25:30) ,不触发

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMxODY2Nzkz_size_16_color_FFFFFF_t_70

所以要触发水印,总结就是为2个条件:

1)watermark时间 >= window_end_time
2)在[window_start_time,window_end_time)中有数据存在

同时满足了以上2个条件,window才会触发。
watermark是一个全局的值,不是某一个key下的值,所以即使不是同一个key的数据,其warmark也会增加.

发表评论

表情:
评论列表 (有 0 条评论,353人围观)

还没有评论,来说两句吧...

相关阅读