当前位置: 首页 > news >正文

(七)Flink Watermark

Flink 的 Watermark 是用来标识数据流中的一个时间点。Watermark 的设计是为了解决乱序数据处理的问题,尤其是涉及到多个分区的 Kafka 消费者时。在 Watermark 的作用下,即使某些数据出现了延迟到达的情况,也不会导致整个处理流程的中断。此外,Watermark 还能防止过期的数据被处理,从而提高了数据处理的准确性。

具体来说,Watermark 有以下两个主要的功能:

  • 解决乱序问题:通过设置 Watermark,可以确保处理过程不会因为等待数据而无限期地阻塞。这样,即使在数据出现延迟的情况下,也能及时处理后续的数据,而不是等到所有的数据都到达之后再开始处理。

  • 允许一定程度的延迟:Watermark 可以在一定程度上接受数据的延迟到达,但同时会有一个设定的最大延迟时间。当数据流中的事件时间戳大于等于水印加上这个最大延迟时间时,就会触发相应的计算操作。这样可以避免因长时间的延迟而导致的不必要的计算开销。

目录

Watermark 策略简介

Watermark 生成策略

1、内置策略

2、自定义 Watermark 策略

处理空闲数据源

Watermark 策略应用

总结


Watermark 策略简介

为了使用事件时间语义,Flink 应用程序需要知道事件时间戳对应的字段,通常通过使用 TimestampAssigner API 从元素中的某个字段去访问/提取时间戳。时间戳的分配与 Watermark 的生成是齐头并进的,其可以告诉 Flink 应用程序事件时间的进度。可以通过指定 WatermarkGenerator 来配置 Watermark 的生成方式。

使用 Flink API 时需要设置一个同时包含 TimestampAssigner 和 WatermarkGenerator 的 Watermark

http://www.lryc.cn/news/428957.html

相关文章:

  • springboot 上传文件失败:The temporary upload location
  • UNiapp之微信小程序导出Excel
  • fsadsadsad
  • 高效录制新选择:2024年Windows录屏软件
  • Java技术面试(一面)
  • docker修改数据目录
  • Appium学习
  • 回顾 | 瑞云科技亮相ICIC2024,虚拟仿真实训云平台引关注
  • libLZMA库iOS18平台编译
  • 《AI办公类工具PPT系列之二——iSlide AI》
  • C语言基础(六)
  • 什么是词向量?如何得到词向量?Embedding 快速解读
  • AI视频创作应用
  • JAVA常见的工具类之Object类(超详细)
  • 深度学习(YOLO、DETR) 十折交叉验证
  • 基于php网上差旅费报销系统设计与实现
  • 微服务及安全
  • 图文详解ThreadLocal:原理、结构与内存泄漏解析
  • 基于java的综合小区管理系统论文.doc
  • 如何合理设置PostgreSQL的`max_connections`参数
  • Kubectl 常用命令汇总大全
  • 【Linux】Linux环境基础开发工具使用之Linux调试器-gdb使用
  • clickhouse_driver
  • BI分析实操案例分享:零售企业如何利用BI工具对销售数据进行分析?
  • python : Requests请求库入门使用指南 + 简单爬取豆瓣影评
  • 宋红康JVM调优思维导图
  • linux 网卡配置
  • IEEE |第五届机器学习与计算机应用国际学术会议(ICMLCA 2024)
  • 【网络安全】漏洞挖掘:IDOR实例
  • vue项目执行 cnpm install 报错证书过期的解决方案