窗口和时间
窗口
Flink通过窗口数据划分不同,分为三种窗口:
- 滚动窗口:窗口数据有固定的大小,窗口数据不会叠加
- 滑动窗口:窗口数据有固定的大小,并且有生成间隔
- 会话窗口:窗口数据没有固定的大小,根据用户传入的参数进行划分,窗口数据无叠加
时间
Flink中的时间分为三种:
- 事件时间(Even Time):即事件实际发生的时间
- 摄入时间(Ingestion Time):事件进入流处理框架的时间
- 处理时间(Processing Time):事件被处理的时间
事件时间
事件时间指的是数据产生的时间,这个时间一般由苏韩剧生产方自身携带,如Kafka消息,每个生成的消息中自带一个时间戳代表每套数据的产生时间。事件时间从消息的产生就诞生了,不会改变,也是我们使用最频繁的时间
利用Event Time需要指定如何生成事件时间的“水印”并且一般和窗口配合使用
final