flink的时间语义
Event Time
事件发生的时间,通常在实际应用中,都是来源于数据本身自带的时间字段的,也是我们经常使用的,不过,要想使用,
前提一定要设置水位线,表示当前事件运行进度,不管是否排序还是延迟到达,最后处理 Event Time 将产生完全一致
和确定的结果性
env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime)
Processing Time
默认的时间语义,即系统默认的时间,拥有最好的性能和最低的延迟,容易受到数据传输中断的影响,在集群环境中,很容
易出现数据结果统计错误
env.setStreamTimeCharacteristic(TimeCharacteristic.ProcessingTime)
Ingestion Time
数据进入flink数据源的时间
env.setStreamTimeCharacteristic(TimeCharacteristic.IngestionTime)