flink的计时器

背景

在flink中,我们经常使用ontimer计时器实现很多逻辑的功能,常见的比如某个传感器温度增加连续超过1分钟的告警输出等,本文就来简单记录下计时器的作用

计时器

ontimer的定义

java 复制代码
public void onTimer(long timestamp, OnTimerContext ctx, Collector<O> out)

timestamp: 触发定时器的事件/处理时间戳,这个时间是register定时器时指定的那个时间

ctx: 上下文对象,通过它可以访问水位线时间戳,处理时间时间戳,当前键值等

out:主输出,注意,ontimer定时器中也可以输出记录

基本上在定时器中我们能实现的逻辑和在process主逻辑中的一样

计时器局限性

我们只能在KeyedStream上,也就是键值分区数据流上注册计时器,如果你想要在DataStream上面使用,你需要首先把DataStream转换成KeyedStream,而转换的方式可以通过实现一个返回常数值的KeySelector来创建KeyedStream,但是一旦这样做,下游的算子的并行度相当于实际变成了1,性能会受到极大的影响.

相关推荐
123_不打狼1 小时前
AI Agent可观测性:破解多步推理黑盒的技术实践
大数据·人工智能
用户3610588626122 小时前
Spark 核心之二次排序、分组取 TopN 优化分析
大数据·spark
ZeekerLin3 小时前
本体论Ontology在企业AI项目落地思考
大数据·人工智能·企业ai落地·本体论
七夜zippoe3 小时前
基于 DolphinDB 构建全流程质量追溯体系:从原材料到成品的全链路追踪
大数据·人工智能·算法·全链路·dolphindb·质量追溯
zzzll11113 小时前
AI Agent可观测性:破解多步推理黑盒的技术实践
大数据·人工智能
没落之王4 小时前
没落之王破天象,易学当兴
大数据·人工智能·哈希算法·可用性测试
金融小师妹11 小时前
多因子智能推演:油价回落6%与黄金震荡上行的关联解析——AI预测框架
大数据·python·深度学习
IanSkunk13 小时前
眼视光中心设备互联与数据安全:从设备采购到患者数字档案的合规路径
大数据
重庆传粉科技13 小时前
AI搜索重构互联网价值交换:GEO如何缓解全域流量流失难题
大数据·人工智能