栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Flink的Watermark简单理解

Flink的Watermark简单理解

Flink的Watermark简单理解
: 定义
Watermark 是一种衡量 Event Time 进展的机制。
Watermark 是用于处理乱序事件的,而正确的处理乱序事件,通常用 Watermark 机制结合 window 来实现。
数据流中的 Watermark 用于表示 timestamp 小于 Watermark 的数据,都已经 到达了,因此,window 的执行也是由 Watermark 触发的。
Watermark 可以理解成一个延迟触发机制,我们可以设置 Watermark 的延时 时长 t,每次系统会校验已经到达的数据中最大的maxEventTime,然后认定 eventTime 小于 maxEventTime - t 的所有数据都已经到达,如果有窗口的停止时间等于 maxEventTime – t,那么这个窗口被触发执行。
图片和代码结合理解

设置watermark为2s

.assignTimestampsAndWatermarks(new BoundedOutOfOrdernessTimestampExtractor[SensorReading](Time.seconds(2)) {
      ............
    })

设置滚动窗口为5s

.timeWindow(Time.seconds(5))

添加允许处理迟到的数据10s,添加,将迟到的数据放入侧输出流

.allowedLateness(Time.seconds(10))
.sideOutputLateData(lateTag)

博主的理解有错误,请在评论区联系,博主会及时修正。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/632678.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号