2.4 TimerService的设计与实现

在整个流数据处理的过程中,针对时间信息的处理可以说是非常普遍的,尤其在涉及窗口计算时,会根据设定的TimeCharacteristic是事件时间还是处理时间,选择不同的数据方式处理接入的数据。

那么在Operator中如何对时间信息进行有效的协调和管理呢?在每个Operator内部都维系了一个TimerService,专门用于处理与时间相关的操作。例如获取当前算子中最新的处理时间以及Watermark、注册不同时间类型的定时器等。我们已经知道,在ProcessFunction中会非常频繁地使用TimerService定义和使用定时器,以完成复杂的数据转换操作。接下来我们重点了解TimerService组件的设计和实现。