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

相关推荐
财经资讯数据_灵砚智能5 分钟前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年4月11日
大数据·人工智能·python·信息可视化·自然语言处理·ai编程
聊点儿技术6 分钟前
IPv6来了,IP精准定位服务还能“准”吗?
大数据·网络·人工智能·ip·ipv4·ipv6·ip精准定位
wanhengidc16 分钟前
云手机搬砖安全吗
大数据·运维·服务器·安全·游戏·智能手机
juniperhan29 分钟前
Flink 系列第 3 篇:核心概念精讲|分布式缓存 + 重启策略 + 并行度 底层原理 + 代码实战 + 生产规范
大数据·分布式·缓存·flink
AI自动化工坊35 分钟前
Meta Muse Spark技术深度解析:原生多模态推理架构实践指南
大数据·人工智能·架构·spark
juniperhan35 分钟前
Flink 系列第6篇:Watermark 水印全解析(原理+实操+避坑)
大数据·数据仓库·flink
lifallen37 分钟前
如何保证 Kafka 的消息顺序性?
java·大数据·分布式·kafka
Elastic 中国社区官方博客43 分钟前
如何使用 LogsDB 降低 Elasticsearch 日志存储成本
大数据·运维·数据库·elasticsearch·搜索引擎·全文检索·可用性测试
Dreamboat-L43 分钟前
HBase远程访问配置(详细教程)
大数据·数据库·hbase
talen_hx2961 小时前
《零基础入门Spark》学习笔记 Day 15
大数据·笔记·学习·spark