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

相关推荐
诸神缄默不语6 小时前
备战 AI 出海 DAY 0:海外数据采集
大数据·人工智能
洋洋不叫杨杨8 小时前
揭秘当下知名的SEO优化渠道,你知道几个?
大数据·python
大大大大晴天8 小时前
用 Helm、CRD 与 Operator 管大数据:声明式运维如何替代脚本化部署
大数据
外域速览10 小时前
2026世界动力电池大会今日宜宾启幕:固态电池从实验室走向量产,IEC 国际标准终结概念乱象
大数据·人工智能·microsoft
小五传输10 小时前
FTP替代怎么做?医院文件安全传输选型与迁移指南
大数据·运维·安全
小刘快学习10 小时前
一把钥匙开所有门:企业AI网关的统一身份与权限治理
大数据·人工智能
大模型码小白12 小时前
AI大模型接入SDK:人工智能核心概念与发展史
大数据·运维·人工智能·安全·prompt
电商API_1800790524712 小时前
电商商品价格监控工具淘宝京东商品价格抓取API项目实操分享
java·大数据·开发语言·前端·数据挖掘
金立基胶粘13 小时前
如何利用替塑油推动环保发展?
大数据·安全
用户36105886261213 小时前
SparkStreaming 之 Kafka 与 SparkStreaming 参数配置详解
大数据·spark