精细化学品网站建设,做黄金的分析师网站,建网站解决方案,企业网站建设维护含义
事件时间#xff1a;数据产生的时间 处理时间#xff1a;数据的处理时刻
水位线
用来衡量事件时间进展的标记#xff0c;就被称作『水位线』#xff0c;水位线可以看作是一条特殊的数据记录#xff0c;是插入到数据流中的一个标记点#xff0c;主要内容是个时间戳…含义
事件时间数据产生的时间 处理时间数据的处理时刻
水位线
用来衡量事件时间进展的标记就被称作『水位线』水位线可以看作是一条特殊的数据记录是插入到数据流中的一个标记点主要内容是个时间戳标记事件时间。 虽然水位线代表着数据事件时间但是数据可能乱序到达如何处理乱序的水位线在 乱序数据量小判断数据当前时间是否大于当前水位线大于则更新水位线。 乱序数据量大每过一段找到这段时间最大的时间戳判断与当前水位线关系大则更新 乱序迟到的数据为了让窗口窗口收集到迟到的数据采用等待窗口。 水位线特性
水位线是插入到数据流中的一个标记可以认为是一个特殊的数据水位线主要的内容是一个时间戳表示当前事件时间的进展水位线是基于数据的时间戳生成的水位线的时间戳必须单调递增以确保任务的事件时间一直向前推进
flink中可以将数据流切割成有限大小的多个存储桶存储桶会把每个数据分发到对应的桶中每个数据都会分发到对应的桶当到达窗口结束时间时就对每个桶中收集的数据进行计算处理。
生成水位线
完美的水位线是绝对正确的是指等足够的时间保证水位线之前的数据全部到齐但是为实时性没有办法让水位线等的足够长对于低延迟和结果的正确需要权衡机制 指定watermark 策略然后使用时间窗口时应该使用事件时间的窗口。 watermark主要有两类一类是有序的一类是乱序的其实本质上有序的就是乱序容忍度为0的乱序 有序流watermark 最大事件时间 无序流watermark 最大事件时间 - 乱序容忍度
多并行度下水位线传递
在多个算子下数据的处理速度不同在流式计算中不同算子处理的进度是不同的在watermark进度传递时候按照最小原则进行传递。多个并行度下只有算子的每个处理进度到达触发。 特殊情况下可能由于某个并行度某个并行度下一直没有数据会导致窗口一直不触发针对这种清库可以为并行度设置空闲等待。
迟到数据处理
针对迟到的数据可以设置数据允许迟到保证对于迟到的数据也能进行处理通过 allowedLateness 推迟关闭窗口窗口主要有两步1是触发窗口计算2是窗口关闭乱序容忍度针对触发窗口计算时间的推迟推迟关闭窗口则是针对窗口关闭在推迟窗口关闭这块则是来一条则需要重新计算一次窗口。
迟到数据可以通过侧数据流进行处理
因为实时流式处理不会一直等待数据但是可以通过辅助的侧流的数据进行处理。