Apache flink 我的Flink应用程序需要水印吗?如果没有,我是否需要水印策略.noWatermarks?
我不确定我的Flink应用程序是否需要水印。什么时候有必要 如果我不需要它们,Apache flink 我的Flink应用程序需要水印吗?如果没有,我是否需要水印策略.noWatermarks?,apache-flink,flink-streaming,Apache Flink,Flink Streaming,我不确定我的Flink应用程序是否需要水印。什么时候有必要 如果我不需要它们,WatermarkStrategy.noWatermarks()?时间t的水印标记数据流中的一个位置,并断言此时流在时间t之前已经完成 水印的唯一作用是触发基于事件时间的计时器的触发 基于事件时间的计时器由KeyedProcessFunctionAPI直接公开,也由内部使用 事件时间窗口 CEP(模式匹配)库,如果您指定要执行基于事件时间的处理,它将使用水印对传入流进行排序 Flink SQL,同样仅在执行基于事件时
WatermarkStrategy.noWatermarks()
?时间t的水印标记数据流中的一个位置,并断言此时流在时间t之前已经完成
水印的唯一作用是触发基于事件时间的计时器的触发
基于事件时间的计时器由KeyedProcessFunction
API直接公开,也由内部使用
- 事件时间窗口
- CEP(模式匹配)库,如果您指定要执行基于事件时间的处理,它将使用水印对传入流进行排序
- Flink SQL,同样仅在执行基于事件时间的处理时使用:例如,ORDER BY、版本表联接、windows、MATCH_识别等
水印策略
:
env.fromSource(source、水印策略、sourceName);
如果您实际上不需要水印,可以在此界面中使用WatermarkStrategy.noWatermarks()