Flink1.10进阶:ProcessFunction介绍及KeyedProcessFunction实例
格式
ProcessFunction 可以被认为是一种提供了对 KeyedState 和定时器访问的 FlatMapFunction。每在输入流中接收到一个事件,就会调用来此函数来处理。对于容错的状态,ProcessFunction 可以通过 RuntimeContext 访问 KeyedState,类似于其他有状态函数访问 KeyedState。
格式
Timers 定时器可以对处理时间和事件时间的变化做一些处理。每次调用 processElement() 都可以获得一个 Context 对象,通过该对象可以访问元素的事件时间戳以及 TimerService。TimerService 可以为尚未发生的事件时间/处理时间实注册回调。当定时器到达某个时刻时,会调用 onTimer() 方法。在调用期间,所有状态再次限定为定时器创建的键,允许定时器操作 KeyedState。
ProcessFunction介绍及KeyedProcessFunction实例
最新推荐文章于 2024-06-12 00:08:37 发布
本文深入介绍了Flink中的ProcessFunction,它提供对KeyedState和定时器的访问,类似于FlatMapFunction。ProcessFunction在接收到每个输入事件时都会被调用,可用于处理有状态的任务。同时,文章还讲解了如何使用TimerService注册定时器,并在定时器触发时调用onTimer()方法进行处理,确保操作仍限定在相关的键上。
摘要由CSDN通过智能技术生成