Flink 窗口迟到很久的消息处理/side outputs 旁路输出/防止数据丢失

Posted 二十六画生的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flink 窗口迟到很久的消息处理/side outputs 旁路输出/防止数据丢失相关的知识,希望对你有一定的参考价值。

解决方案

  • Watermark : 防止数据乱序 / 指定时间内获取不到全部数据。
  • allowLateNess:将窗口关闭时间再延迟一段时间。
  • sideOutPut :当指定窗口已经彻底关闭后,就会把所有过期延迟数据放到侧输出流,让用户决定如何处理(最后兜底的操作)。

迟到事件处理:

1重新激活已经关闭的窗口并重新计算以修正结果(Allowed Lateness)。
2将迟到事件收集起来另外处理(Side Output)。
3将迟到事件视为错误消息并丢弃(flink默认)。


Side Output机制:
将迟到事件单独放入一个数据流分支,这会作为 window 计算结果的副产品,以便用户获取并对其进行特殊处理。

Allowed Lateness机制:
允许用户设置一个允许的最大迟到时长。Flink 会在窗口关闭后一直保存窗口的状态直至超过允许迟到时长,这期间的迟到事件不会被丢弃,而是默认会触发窗口重新计算。

第四章 flink特性 - 流计算乱序延迟数据问题(Watermark) - 简书


Flink 数据源分流/一个数据源分成多个/使用filter/使用split / select(已废弃)/side outputs 旁路输出_二十六画生的博客的博客-CSDN博客_flink 多个filter


Flink(29):Flink中对迟到数据的处理(Allowed Lateness 和 SideOutput)_电光闪烁的博客-CSDN博客_flink迟到数据处理

.sideOutputLateData(outputTag) 


Flink-处理乱序数据和迟到数据的总结和解决办法_Knight_AL的博客-CSDN博客

以上是关于Flink 窗口迟到很久的消息处理/side outputs 旁路输出/防止数据丢失的主要内容,如果未能解决你的问题,请参考以下文章

Flink 窗口迟到很久的消息处理/side outputs 旁路输出/防止数据丢失

Flink 窗口迟到很久的消息处理/side outputs 旁路输出/防止数据丢失

Apache Flink——侧输出流(side output)

Flink 窗口延迟数据处理 AllowedLateness

Flink 窗口延迟数据处理 AllowedLateness

Flink / Scala - TimeWindow 处理迟到数据详解