当前位置: 首页 > 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

相关文章:

  • leetcode108.把升序数组转换成二叉搜索树
  • 【前端】VUE动态引入组件 通过字符串动态渲染模板 动态生成组件
  • 【ubuntu24.04】k8s 部署5:配置calico 镜像拉取
  • 【从问题中去学习k8s】k8s中的常见面试题(夯实理论基础)(十二)
  • 目标检测 | yolov6 原理和介绍
  • PDF转图片 JAVA
  • go--入门学习(二)
  • Python入门教程(超详细)
  • qiankun微任务之全局状态管理
  • Linux安装最新版Docker完整教程
  • stm32各个系列开发部库下载地址
  • 【Redis】数据类型详解及其应用场景
  • [云计算] 导论学习笔记
  • EasyCVR视频汇聚平台构建远程安防监控:5大亮点解析,助力安防无死角
  • 前端宝典之八:React状态管理全解析并手写实现
  • [译]Python中的类属性与实例属性的区别
  • CSS 提示工具(Tooltip)
  • C学习-枚举(九)
  • gcc介绍及安装
  • git 常用命令
  • NSTimer学习笔记
  • React Native移动开发实战-3-实现页面间的数据传递
  • ReactNative开发常用的三方模块
  • Sublime text 3 3103 注册码
  • vue中实现单选
  • 搭建gitbook 和 访问权限认证
  • 构建工具 - 收藏集 - 掘金
  • 关键词挖掘技术哪家强(一)基于node.js技术开发一个关键字查询工具
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 聊聊sentinel的DegradeSlot
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • 用jQuery怎么做到前后端分离
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ​ssh免密码登录设置及问题总结
  • #Linux(make工具和makefile文件以及makefile语法)
  • #大学#套接字
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • (附源码)计算机毕业设计高校学生选课系统
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (一)SpringBoot3---尚硅谷总结
  • (转)项目管理杂谈-我所期望的新人
  • (转载)OpenStack Hacker养成指南
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • *** 2003
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .Net Memory Profiler的使用举例
  • .NET 使用 XPath 来读写 XML 文件
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • .net6 core Worker Service项目,使用Exchange Web Services (EWS) 分页获取电子邮件收件箱列表,邮件信息字段
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • ?.的用法
  • [2023-年度总结]凡是过往,皆为序章