Flink的高级特性(2)中,有哪些长尾词级的高级应用场景?
- 内容介绍
- 文章标签
- 相关推荐
本文共计998个文字,预计阅读时间需要4分钟。
Watermark+水位线+处理乱序+数据流从数据生产到DataSource,再到整体的算子,中间有一个过程和时间,可能存在数据乱序问题。通过Watermark+EventTime来处理。作用:由于网络延迟等,处理乱序问题。
watermark 水位线 处理乱序
数据流从数据产生到DataSource,再到具体的算子,中间是有一个过程和时间,有可能会导致数据乱序问题,通过watermark + EventTime来处理。
作用:由于网络延迟等原因,一条数据会迟到计算,比如使用event time来划分窗口,我们知道窗口中的数据是计算一段时间的数据,如果一个数据来晚了,它的时间范围已经不属于这个窗口了,则会被丢弃,但他的event time实际上是属于这个窗口的。引入watermark机制则会等待晚到的数据一段时间,等待时间到则触发计算,如果数据延迟很大,通常也会被丢弃或者另外处理。
生成方式
watermark生成方式有两种:
- 周期性生成watermark:每隔N秒自动向流中注入一个watermark,由executionConfig.setAutoWatermarkInterval()决定,默认是200毫秒。
本文共计998个文字,预计阅读时间需要4分钟。
Watermark+水位线+处理乱序+数据流从数据生产到DataSource,再到整体的算子,中间有一个过程和时间,可能存在数据乱序问题。通过Watermark+EventTime来处理。作用:由于网络延迟等,处理乱序问题。
watermark 水位线 处理乱序
数据流从数据产生到DataSource,再到具体的算子,中间是有一个过程和时间,有可能会导致数据乱序问题,通过watermark + EventTime来处理。
作用:由于网络延迟等原因,一条数据会迟到计算,比如使用event time来划分窗口,我们知道窗口中的数据是计算一段时间的数据,如果一个数据来晚了,它的时间范围已经不属于这个窗口了,则会被丢弃,但他的event time实际上是属于这个窗口的。引入watermark机制则会等待晚到的数据一段时间,等待时间到则触发计算,如果数据延迟很大,通常也会被丢弃或者另外处理。
生成方式
watermark生成方式有两种:
- 周期性生成watermark:每隔N秒自动向流中注入一个watermark,由executionConfig.setAutoWatermarkInterval()决定,默认是200毫秒。

