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,性能会受到极大的影响.

相关推荐
Hyxino3 分钟前
科技向善,守护心灵|海曦技AI心理筛查设备落地西安高新三初,以科技护航青少年心理健康
大数据·人工智能
空间宇航12 分钟前
智能制造软件厂商市场与销售价值转型总体解决方案:从成本中心到增长引擎
大数据·人工智能·项目管理·软件构建·智能制造
深眸财经14 分钟前
卡萨帝AI之眼跑出加速度:22大升级让无人家务更进一步
大数据·人工智能
marteker20 分钟前
凯撒医疗集团和戴尔科技如何通过数据分析改善客户体验
大数据·科技
金融小师妹25 分钟前
基于AI多因子模型的黄金价格分析:9连跌后的反弹与约束机制解析
大数据·深度学习·svn·能源
数据科学小丫35 分钟前
finebi 案例3 健身房数据分析(建模)
大数据·数据分析·finebi
GIS数据转换器42 分钟前
空间智能赋能城市低空数字底座及智能网联系统建设方案
大数据·人工智能·信息可视化·数据挖掘·无人机
tobias.b1 小时前
什么是大数据
大数据
得物技术1 小时前
Claude在得物App数仓的深度集成与效能演进
大数据·人工智能·llm
云境天合小科普1 小时前
禽类疾病检测仪:快速筛查,精准锁定病原体
大数据