一、Flink CDC 3.5 发布
在社区用户和开发者们的共同努力下,Apache Flink 社区很高兴宣布 Flink CDC 的下一个主要版本 3.5.0 已经发布[1],你可以通过官网下载和快速体验[2]。3.5 版本共有 39位社区贡献者参与贡献,累计关闭 47 个 issue,合并了 68 个PR,贡献了 77 个 commits。
从代码分布上看,Pipeline 框架和 Pipeline Connector 占据主要部分,看起来社区用户更喜欢使用 YAML 文本完成实时 ETL 任务的开发,比如该版本新增了读取 PostgreSQL 数据源和写入 Apache Fluss [3]流存储的能力,解锁了一个文本实现整库同步 PostgreSQL 的数据到 Fluss 流存储的业务场景。此外,一些重点连接器如MySQL CDC Source、Paimon Sink 也占据了相当大的部分,也和实时入湖入仓领域快速发展吻合。以及文档模块均为用户带来了很多特性和改进。
社区推荐您尝试升级到当前版本,同时你也可以在社区邮件列表[4]和 Flink JIRA[5] 上反馈您使用过程中碰到的问题和建议。
二、Flink CDC 3.5 速览
Flink CDC 3.5 版本中,社区贡献者重点改进了 Pipeline 框架在处理万表同步、元数据协调等场景的性能优化和稳定性改进,扩展了 CDC Pipeline 支持的上下游,新增了读取 PostgreSQL 数据源和写入 Apache Fluss 流存储的能力,解锁了通过简单的 YAML 文本便可实现整库同步 PostgreSQL 的数据到 Fluss 流存储等业务场景。MySQL 主从复制的 GTID 空洞场景、Paimon 表结构自动演进等极端场景进行深度适配和修复,解决了生产环境中小概率命中的数据正确性和安全问题问题。此外,来自 Oceanbase 社区的贡献者对 Oceanbase CDC Source 使用 Binlog Service 进行了重写,极大地提升了流读场景下的稳定性。
三、详解核心特性和重要改进
3.1 Pipeline Connector
- 新的 PostgreSQL Source 连接器。YAML Pipeline 作业现在可以从 PostgreSQL 数据库读取全量和增量数据,同时支持表结构自动推导和整库同步等功能。
- 新的 Apache Fluss Sink 连接器。Apache Fluss 是一款专为实时分析而设计的流式存储。现在,YAML pipeline 作业支持自动建表,并将上游的数据变更实时写入到 Fluss 中。
- 升级 Paimon SDK 版本。Paimon 连接器的依赖版本已升级到目前最新的 1.2.0。
3.2 Source Connector
- MySQL CDC 现在可以正确处理
VARCHAR(0)字段类型。 - PostgreSQL CDC 现在支持发现分区表并以 Append Only 模式读取变更数据。
- OceanBase CDC 实现现在从 LogProxy 迁移至更稳定的 OceanBase Binlog Service。
3.3 Pipeline 框架改进
- 扩充日期时间类型支持。Transform 中提供的转换和日期时间函数现在能够正确处理
DATE和TIME字段类型,而不是退化到整数运算。 - 改进错误恢复逻辑。通过改进错误恢复和状态存储逻辑,Pipeline 作业现在能够从更多 Failover 场景中自动恢复。
3.4 其他改进
- Paimon Pipeline 连接器现在支持写入现存表。在下游已经存在同名表时,会自动将上游数据进行转换后尝试写入其中,而非报告表结构不匹配的错误。
- 修复 MySQL CDC 在主从 GTID 复制不保序导致的数据正确性问题。这一问题只影响开启了并行主从拷贝(
replica_parallel_workers > 1)、且未启用提交顺序一致性保证(replica_preserve_commit_order = NO)的集群。 - 修复增量快照框架中不正确的读取结束逻辑。此问题可能导致作业在增量读取阶段挂起。
- 修复大小写敏感场景下执行表结构变更可能导致作业报错的问题。
四、致谢
特别感谢 Kunni 作为 Release Manager 对 Flink CDC 3.5 版本的管理和发布工作,Ouyangwulin 对新增 PostgreSQL Pipeline Source 连接器的贡献,Junbo Wang 和 Hongshun Wang 对新增 Fluss Pipeline Sink 连接器的贡献。
感谢以下开发者对此版本做出的代码贡献(字母排序):
Chao Zhang, ChengJie1053, gongzhongqiang, Hang Ruan, Hongshun Wang, hql0312, Ihor Mielientiev, Junbo Wang, junmuz, kangzai, Kunni, Lanny Boarts, linjianchang, lvyanquan, Marta Paes, MOBIN, Naci Simsek, North Lin, ouyangwulin, proletarians, Sachin Mittal, Sergei Morozov, SeungMin, Shawn Huang, suhwan, suntectec, tbpure, Thorne, Tianzhu Wen, Vinh Pham, wangjunbo, wudi, wuzexian, Xin Gong, yuanoOo, yuxiqian, zhangchao.doovvv, zhuxt2015, Мухутдинов Артур
引用
[1] https://flink.apache.org/2025/09/26/apache-flink-cdc-3.5.0-release-announcement/