Flink窗口有哪些类型介绍?

  

Flink中的窗口用于将无界数据流切割成有界块进行计算。下面编程教程网小编给大家简单介绍一下几种主要类型的窗口。

Flink窗口介绍:

滑动窗口:固定大小的窗口,按照固定的滑动间隔滑动。

DataStream windowedStream = inputStream.window(SlidingEventTimeWindows.of(Time.seconds(10), Time.seconds(5)));  

滑动跨度窗口:按时间间隔生成窗口。

DataStream windowedStream = inputStream.window(SlidingEventTimeWindows.of(Time.seconds(10)));

会话窗口:按会话活跃时间生成窗口,窗口间有一定的不活跃期。

DataStream windowedStream = inputStream.window(EventTimeSessionWindows.withGap(Time.minutes(10))); 

全局窗口:将整个数据流视为一个窗口。

DataStream windowedStream = inputStream.window(GlobalWindows.create()); 

这些窗口之间的主要区别是:

1、窗口大小:滑动窗口和滑动跨度窗口的大小可以配置,会话窗口的大小不确定。
2、生成规则:根据记录数生成滑动窗口,根据时间生成滑动跨度窗口,根据非活动时间生成会话窗口。
3、重叠:滑动窗口可以重叠,但会话窗口和全局窗口不能重叠。
4、使用场景:滑动窗口用于近期聚合,会话窗口用于用户行为分析,全局窗口用于整体统计。

以上是编程学习网小编为您介绍的“Flink窗口有哪些类型介绍?”的全面内容,想了解更多关于 前端知识 内容,请继续关注编程基础学习网。

相关文章