Flink CDC 3.4 发布, 优化高频 DDL 处理,支持 Batch 模式,新增 Iceberg 支持

引言

Apache Flink 社区很开心地宣布,在经过4个月的版本开发之后,Flink CDC 3.4.0 版本已经正式发布。Flink CDC 是流行的流式数据集成框架,CDC 3.4.0 版本强化了框架对于高频表结构变更的支持,框架支持了 batch 执行模式,新增 Apache Iceberg Sink 连接器支持,用户可以使用 Flink CDC 将数据库数据全增量一体化实时写入 Iceberg 数据湖。我们推荐社区用户升级到 Flink CDC 3.4.0 版本。

一、版本数据

Flink CDC 3.4.0 版本吸引了51位社区贡献者,累计完成259次代码提交,关闭65个 issue。这些代码贡献主要分布在连接器组件、运行时引擎、transform 等模块。

现在,您可以访问 Flink CDC Release 页面[1] 下载 Flink CDC 3.4.0 的二进制包,也可以在文档网站[2] 上访问最新版本的文档。如果您在使用时遇到任何问题,欢迎在 Flink 用户邮件列表[3]、用户钉群、GitHub Discussions[4] 或 Flink JIRA 看板[5] 上提出问题或发起讨论。

二、版本概览

此次发版,Flink CDC 重点改进和功能如下:

Flink CDC 3.4.0 为数据集成 Pipeline 作业支持了 batch 执行模式,batch 执行模式可以高效实现全量数据同步的需求;在表结构演进功能上完成了高频表结构变更场景的性能优化;同时增加了对 YARN Application 提交模式的支持;新增了 Iceberg Sink 连接器,支持 CDC 数据实时写入 Iceberg,此外还对 Paimon、MySQL 和 MongoDB 连接器做了完善和优化。

三、特性解读

3.1 Flink CDC 框架

Batch 执行模式

在Flink CDC 3.4版本中,CDC Pipeline 框架提供了 execution.runtime-mode参数,当配置该参数为 BATCH时,会创建并提交 Flink batch 作业。在只需执行全量数据同步的业务场景下,使用batch模式能够有效降低作业资源消耗,提升数据同步效率。

目前仅支持 MySQL Source 连接器对接到了batch模式,且需将启动参数配置为 snapshot(仅快照)模式。

Schema Evolution 优化

Flink CDC 3.4 版本优化了多表同步情况下,作业初始化阶段的协调耗时,并修复了高频率执行表结构变更时,偶现的作业挂起问题,同时优化了作业异常时打印更多表结构和数据信息便于问题分析排查。

YARN Application 部署模式

Flink CDC CLI 在3.4版本中支持通过 ./bin/flink-cdc.sh -t yarn-application命令创建一个新的 yarn-application部署作业。在此模式下,框架支持创建一个专用的 JobManager 并提交作业,并在作业执行完成后自动销毁。

3.2 Flink CDC 连接器

Iceberg Pipeline Connector

Apache Iceberg 业界领先的数据湖格式,Flink CDC 3.4.0版本提供了Iceberg Sink 连接器,现在用户可以使用 CDC YAML 作业将来自数据库的CDC数据高效写入到 Apache Iceberg 中,构建基于 Iceberg 的实时数据湖。

Paimon Pipeline Connector

Paimon 是国内实时数据湖的主流格式,在Flink CDC 3.4版本中,社区升级 Paimon 版本到 1.0.1,这是 Apache Paimon 1.0 的稳定版本。同时优化了checkpoint 阶段执行 commit 的用时,新增对无主键表的写入支持,同时还支持写入完整的 Changelog。

MySQL CDC Connector

MySQL作为重点连接器,在 Flink CDC 3.4版本中,社区支持了将变更流转换为仅追加(Append Only)流,从而实现逻辑删除的功能。同时提供优先处理无界的分片的配置,能够有效避免全量阶段运行时间过长导致 TaskManager 处理最后一个大分片引发的 OOM 问题。

MongoDB CDC Connector

针对社区用户对 MongoDB 对 oplog 中的操作类型访问需求,CDC 3.4 版本对 MongoDB CDC 连接器增加 op_type 元数据,支持读取 oplog 中的操作类型。

3.3 Flink CDC 缺陷修复和改进

除了上述核心特性外,Flink CDC 3.4 版本也包含了多个缺陷修复和改进,包括:

  • 修复了 Pipeline 作业在有状态重启后会重新推导表结构的问题。

  • 修复了 Pipeline 作业在使用 transform 时不支持使用不满足 java 变量名规则字段的问题。

  • 修复了 Pipeline 作业在使用 transform 时不支持覆盖表中已经存在的同名列的问题。

  • 修复了 Pipeline 作业在 transform 中部分算术函数不支持处理 null 值的问题。

  • 修复了 MySQL 连接器开启 scan.binlog.newly-added-table.enabled 时意外捕获其他表的问题等。

四、未来规划

Flink CDC 3.5 版本的规划已经在社区发起讨论,新的版本一方面将会继续聚焦社区用户的共性需求,完善Flink CDC 框架能力,如脏数据处理、数据限流等API设计;另一方面会丰富 Pipeline 连接器生态,在社区贡献者特别是海外贡献者的驱动下支持 PostgreSQL 等海外重点生态;同时面向AI时代,也会完善目前Flink CDC 已有的 AI model 能力,对接更多AI生态。

致谢

特别感谢以下 51 名开发者对 Flink CDC 3.4.0 版本作出的贡献(按字母排序)!:

911432, chenhongyu, ConradJam, Ferenc Csaky, gongzhongqiang, Hang Ruan, He Wang, hiliuxg, Hongshun Wang, Jason Zhang, Jiabao Sun, Junbo Wang, Jzjsnow, Kevin Caesar, Kevin Wang, Kunni, Leonard Xu, lidoudou1993, linjianchang, liuxiaodong, lvyanquan, lzshlzsh, MOBIN-F, moses, North Lin, Olivier, ouyangwulin, Petrichor, proletarians, qinghuanwang, Qingsheng Ren, Robin Moffatt, Runkang He, Sergei Morozov, Seung-Min Lee, Shawn Huang, stayrascal, Thorne, Timi, Umesh Dangat, Vincent-Woo, Vinh Pham, wenmo, Wink, wudi, Xin Gong, yohei yoshimuta, yuanoOo, yuxiqian, zhangzheng


[1] https://github.com/apache/flink-cdc/releases/tag/release-3.4.0

[2] https://nightlies.apache.org/flink/flink-cdc-docs-release-3.4/

[3] https://flink.apache.org/what-is-flink/community

[4] https://github.com/apache/flink-cdc/discussions

[5] https://issues.apache.org/jira/projects/FLINK/summary

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/80888.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flink SQL、Hudi 、Doris在数据上的组合应用

Flink SQL、Hudi 和 Doris 是大数据领域中不同定位的技术组件,各自解决不同的问题,以下从核心定位、关键特性和典型场景三个维度展开说明: 1. Flink SQL:流批统一的实时计算引擎 核心定位:Flink 是 Apache 顶级的流批…

如何实现RTSP和RTMP低至100-200ms的延迟:直播SDK的技术突破

在实时音视频传输中,低延迟是直播应用的核心技术要求之一。无论是在线教育、远程医疗,还是实时互动直播,延迟过大会影响用户体验,甚至导致应用无法正常使用。大牛直播SDK(SmartMediaKit)在RTSP和RTMP播放器…

upload-labs通关笔记-第15关 文件上传之getimagesize绕过(图片马)

目录 一、图片马 二、文件包含 三、文件包含与图片马 四、图片马制作方法 五、源码分析 六、制作图片马 1、创建脚本并命名为test.php 2、准备制作图片马的三类图片 3、 使用copy命令制作图片马 七、渗透实战 1、GIF图片马渗透 (1)上传gif图…

基于区块链的茅台酒溯源系统:设计方案、应用实例及未来展望

一、项目背景与需求 茅台酒,作为中国白酒的瑰宝,以其深厚的历史底蕴和独特的酿造工艺享誉全球。然而,市场上假冒伪劣产品的泛滥,不仅严重损害了消费者的权益,也对茅台酒的品牌声誉造成了巨大冲击。为了解决这一问题&a…

openCV1.1 Mat对象

imread(“D:\souse\duoxile.jpg”, IMREAD_COLOR); 功能: 从指定路径读取图像文件并解码为OpenCV的Mat对象 第一个参数: 文件路径 类型: const string&描述: 要读取的图像文件的绝对或相对路径示例: “D:\souse\duoxile.jpg” 或 “./images/test.png”第二个参数: 读取模…

java day14

接昨天,响应 响应 就是我们在处理请求的时候,里面的return 其实方法里面写的return的返回平常的什么字符串啊什么等等;这些东西都是直接返回;如果是一个对象的话,我们会按json的格式返回; 这些都依赖于一…

【软件设计师】计算机网络考点整理

以下是软件设计师考试中 ​​计算机网络​​ 的核心考点总结,帮助您高效备考: ​​一、网络体系结构与协议​​ ​​OSI七层模型 & TCP/IP四层模型​​ 各层功能(物理层-数据链路层-网络层-传输层-会话层-表示层-应用层)对应协…

基于深度学习的工件检测系统设计与实现

在工业自动化领域,工件检测一直是提高生产效率和产品质量的关键环节。传统的人工检测方法不仅效率低下,而且容易受到主观因素的影响,导致误判率较高。随着深度学习技术的飞速发展,基于图像识别的自动检测系统逐渐成为研究热点。今…

IIS入门指南:原理、部署与实战

引言:Web服务的基石 在Windows Server机房中,超过35%的企业级网站运行在IIS(Internet Information Services)之上。作为微软生态的核心Web服务器,IIS不仅支撑着ASP.NET应用的运行,更是Windows Server系统管…

Linux周测(一)

提示:学习一周了,来检验一下成果吧 文章目录 技术部分,满分100分。 1.如何在Linux系统中查看当前登录的所有用户信息? w或者who或者last 2.请写出在Linux系统中创建一个新用户“testuser”的命令,并指定其家目录为“/h…

构建下一代AI智能体:基于Spring AI的多轮对话应用

构建下一代AI智能体:基于Spring AI的多轮对话应用 前言 大模型时代,AI应用开发已不再是遥不可及的技术。通过合理设计的Prompt工程和对话架构,开发者可以快速构建具备持续记忆能力的AI智能体。本文将重点介绍如何基于Spring AI框架打造可持…

查看mysql配置文件my.cnf的位置

3.删除mysql相关文件 想要完全卸载mysql,不仅要卸载应用,配置文件及相关文件也需要一一清除,还原环境配置,减少一些麻烦。 sudo rm -rf /usr/local/mysql sudo rm -rf /etc/my.cnf sudo rm -rf /var/db/mysql sudo rm -rf /var/…

【从基础到模型网络】深度学习-语义分割-基础

语义分割在深度学习与人工智能领域占据重要地位。它是计算机视觉的核心任务之一,能够将图像像素级地划分为不同语义类别,为理解图像内容提供关键支持。在自动驾驶中,可精准识别道路、车辆、行人等元素,保障行车安全;在…

C++:array容器

array容器是序列容器&#xff0c;它的特点是&#xff1a;静态&#xff0c;固定数目。可以看作更安全的数组。 它还有一些成员函数&#xff0c;如begin&#xff08;&#xff09;&#xff1a;返回指向容器中第一个元素的随机访问迭代器。 #include<iostream>//数组容器 #…

2025年度消费新潜力白皮书470+份汇总解读|附PDF下载

原文链接&#xff1a;https://tecdat.cn/?p42178 过去一年&#xff0c;消费市场在政策驱动与技术迭代中呈现结构性变革。社零总额达487,895亿元&#xff0c;实物商品网零额占比27%&#xff0c;线上渠道成为增长引擎。本报告从食品饮料、美妆护肤、家电数码、服饰户外四大核心领…

[Web服务器对决] Nginx vs. Apache vs. LiteSpeed:2025年性能、功能与适用场景深度对比

更多服务器知识&#xff0c;尽在hostol.com 当你准备为你的网站或应用程序选择一款 Web 服务器软件时&#xff0c;就像是为你的“超级跑车”选择一款合适的“引擎”——它将直接决定你的“座驾”能跑多快、多稳、以及能适应什么样的“路况”&#xff08;工作负载&#xff09;。…

一款适配国内的视频软件,畅享大屏与局域网播放

软件介绍 今天要给大家安利一款超强视频播放软件——MXPlayer。它的解码实力堪称一绝&#xff0c;市面上不管是常见的 MP4、MKV 格式&#xff0c;还是对播放设备要求极高的超高清 4K、HDR 视频&#xff0c;甚至那些鲜为人知的冷门格式&#xff0c;它统统都能流畅播放&#xff…

[CSS3]百分比布局

移动端特点 PC和手机 PC端网页和移动端网页的有什么不同? PC屏幕大&#xff0c;网页固定版心手机屏幕小&#xff0c;网页宽度多数为100% 谷歌模拟器 使用谷歌模拟器可以在电脑里面调试移动端的网页 屏幕尺寸 了解屏幕尺寸概念 屏幕尺寸: 指的是屏幕对角线的长度&#xff…

【低代码】如何使用明道云调用 Flask 视图函数并传参(POST 方法实践)

在自动化办公或业务流程管理中,明道云提供了强大的 HTTP 请求节点,可以直接调用第三方 API,包括我们常见的 Flask 服务端接口。本文将详细介绍如何使用明道云通过 POST 方法调用 Flask 视图函数并传参,包括配置要点与 Python 后端的参数接收方法。 一、场景介绍 我们希望…

在 Azure OpenAI 上使用 Elastic 优化支出和内容审核

作者&#xff1a;来自 Elastic Muthukumar Paramasivam&#xff0c;Bahubali Shetti 及 Daniela Tzvetkova 我们为 Azure OpenAI 正式发布包添加了更多功能&#xff0c;现在提供内容过滤监控和计费见解的增强&#xff01; 在之前的博客中&#xff0c;我们展示了如何使用 Elasti…