Apache SeaTunnel 2.3.12 发布!核心引擎升级、连接器生态再扩张

本周期合并82个PR,提供9项新特性、30+项功能增强、20+处文档修正,并修复43个Bug。



0

摘要


近期,Apache SeaTunnel 2.3.12 正式发版。这是继 2.3.11 之后的又一次迭代,本周期合并 82 个 PR,提供 9 项新特性、30+ 项功能增强、20+ 处文档修正,并修复 43 个 Bug。核心改进集中在 SensorsData 与 Databend 生态接入,Paimon、ClickHouse、MaxCompute 等连接器读写能力扩充,SQL Transform 语法与向量函数增强,以及 Zeta 引擎 Checkpoint 细粒度监控及 REST 接口易用性提升等方面。



1

亮点一览


Apache SeaTunnel 2.3.12 亮点很多,以下为归类整理:

  • 新增连接器:SensorsData 与 Databend 连接器。

  • 连接器能力扩充:

    • Paimon:多源并发、权限校验、LIKE/IN 谓词下推。
    • ClickHouse:多表并行读取与表结构并行拉取。
    • MaxCompute Sink:追加 upsert&delete 会话模式及时间戳字段写入。
  • Transform/SQL 语法与向量函数增强:SQL Transform 新增 COALESCE 类型转换、multi_if、向量函数与 Murmur64 哈希。

  • Zeta 引擎可观测性增强:REST API 可返回 SQL 格式结果,作业信息自带 startTime,任务队列大小可观测。

  • File 连接器增强:

    支持二进制分块、CSV 分隔符自定义、按最后修改时间过滤文件。
  • 文档修正与补充:补充 Iceberg S3 Tables、JDBC GenericDialect、StarRocks 必填 schema 等说明。

  • Bug 修复:43 项修复涵盖 Iceberg 时区、Kafka 位点、Oracle CDC、Transform 向量维度等场景。

2

功能更新列表

【新增连接器】

  • SensorsData Source/Sink (#9432)
  • Databend Source/Sink (#9331)

【连接器能力扩充】

  • ClickHouse:多表并发读 + 并行读取表结构 (#9704 #9446)
  • Paimon:多源并发、权限控制、LIKE/IN 下推、版本升至 1.1.1 (#9759 #9722 #9484 #9379 #8074)
  • MaxCompute:upsert/delete 会话模式、时间戳字段写入、隧道 endpoint 选项 (#9462 #9234 #9548)
  • Hudi:预合并字段选项 (#9496)
  • HdfsFile:多表并发写 (#9651)
  • Hive Sink:支持 overwrite 模式 (#7891)
  • Kudu:过滤器下推 (#9405)
  • TDengine:子表与 fieldNames 映射 (#9593)
  • MySQL CDC:按时间位点启动、Tinyint(1) 按 byte 读取、兼容 MySQL 8.4+ (#9735 #9373 #9720)
  • Redis Hash:支持 key_field_name 选项,结果记录带回 key (#9642 #9574)
  • File/CSV/Excel:二进制分块、CSV 分隔符自定义、按修改时间过滤、Excel 单表最大行数可配 (#9668 #9608 #9526 #9391)

【Transform & SQL】

  • 新增 COALESCE 类型转换、multi_if、TRIM_SCALE、Murmur64、向量降维、向量函数、JSONPath 多字段提取、Data Validator 转换 (#9299 #9154 #9700 #9748 #9783 #9765 #9712 #9445)
  • SQL Transform EXTRACT 函数扩展字段支持,cast 失败预检 (#9342 #9600)

【Zeta 引擎 & Core】

  • REST API 支持 SQL 格式返回 (#9802)
  • 作业信息新增 startTime (#9400)
  • 任务中间队列大小指标暴露 (#9550)
  • JobStateEvent 事件监听扩展 (#9689)
  • 插件目录隔离:每个连接器可独立 lib 目录 (#9650)
  • 集群脚本支持展示成员信息 (#9502)
  • 默认 slot-num 改为 CPU 核心数×2 (#9601)
  • 本地模式文档与默认配置优化 (#9770)
  • CheckpointErrorRestoreEndTest 用例稳定性优化 (#9619)
  • 存储 metrics 时去掉分布式锁 (#9776)

【格式 & 序列化】

  • Maxwell/Canal/Debezium JSON 格式补充 ts_ms 与 table 字段,File Sink 支持对应格式输出 (#9701 #9278 #9336)

【依赖 & 构建】

  • AWS SDK v2 统一升至 2.31.30 (#9698)
  • Apache Commons 迁移至 Commons-Lang3 (#9694)
  • Spotless 自动替换 shaded 包导入 (#9655)
  • CDC JAR 体积优化 (#9546)

3

文档优化

  • 补充 Iceberg S3 Tables REST Catalog 说明 (#9686)
  • 新增 JDBC GenericDialect 支持描述 (#9763)
  • 修正 StarRocks 文档 schema 必要性为 true (#9656)
  • 修正 REST API finished-jobs 缺少 SAVEPOINT_DONE 字段 (#9676)
  • 修正 transform-v2 TableFilter 标题层级 (#9528)
  • 修正 Sink 插件 plugin_input 配置示例错误 (#9492)
  • 更新 Paimon 投影下推文档 (#9425)
  • 更新 JDBC 全链路文档 (#9679)
  • 更新 SQL 函数返回类型说明 (#9703 #9711)
  • 添加多模态支持描述 (#9652)
  • 添加 SeaTunnel 工具链到 README (#9707)
  • 修正参数类型格式 (#9753)
  • 修正 deepwiki 链接错误 (#9356)
  • 修正 DynamoDB 参数错误 (#9447)
  • 修正文档 404 链接 (#9561)
  • 新增 Zeta 调优指南 (#9539)

4

Bug修复

  • Iceberg:ORC 写入 Illegal provider-class、时区偏移、版本升级至 1.6.1 (#9588 #9460 #9451)
  • Kafka:offset=-1 异常、分区过滤阻塞、恢复作业起始位点错误 (#9376 #9598 #9736)
  • Paimon:DECIMAL 精度丢失、动态分桶异常、重复提交异常 (#9452 #9480 #9595 #9665)
  • ClickHouse:SeaTunnelRow tableId 设置错误 (#9585)
  • File/Parquet:用户自定义 schema 不生效、二进制读取策略空指针 (#9596 #9391)
  • HTTP:pageField 空指针、分页死循环、content-type 缺失、mime 类型非法、字段数量不一致 (#9498 #9504 #9497 #9363 #9103)
  • JDBC:Postgres 网络地址类型读写、Vertica upsert 失效、Float→BigDecimal 精度丢失 (#9618 #9607 #9670)
  • Oracle CDC:LOB 启用时事务提交未更新 (#9412)
  • Mongo-CDC:exactly-once 默认 true 导致异常 (#9454)
  • Redis:Hash 读取 key 字段缺失 (#9642)
  • Elasticsearch:向量列定义生成错误 (#9470 #9471)
  • Prometheus:时间解析 double 失败 (#9311)
  • OceanBase Oracle:创建不支持数据类型 (#9383)
  • RabbitMQ:缺少 durable/exclusive/auto-delete 默认值 (#9631)
  • Transform-V2:向量维度精度、自定义 UDF 异常、日期格式 'T' 处理、from_unixtime 整数输入 (#9646 #9195 #9406 #9738)
  • Spark:source parallelism 未生效 (#9319)
  • Zeta:checkpoint 禁用后仍多读、local 模式无法结束、master 切换线程泄露、Imap 资源泄露、作业状态获取缺少 pending、HTTPS 自定义端口失效 (#9552 #9549 #9464 #9696 #9489 #9705)
  • 其余 CI、E2E、打包、依赖冲突等修复。

5

致谢


1758189580474ec1c6dec5251590e

贡献者名单

按 GitHub ID 首字母排列


老王、Adam Wang、alberne wang、chestnufang、corgy - w、CosmosNi、David Zollo、dy102、dyp12、e - mhui、Emmanuel、hailin0、huangkuilin、Jarvis、Jast、Jeremy、JeremyXin、Jia Fan、jiachuan.zhu、Junxin Xiao、Leon Yoah、litiliu、liucongjy、liuwei178、loupipalien、Luigi Durso、misi、Nana Jerde、ocean - zhc、Osiris、Parkjihun、SEZ、sohurdc、suntectec、wanmingshi、WenDing - Y、wgzhao、wildpea、xiaochen、yzeng1618、ZHANG YINGHONG、zhangdonghao、zhangqingsong、zhenyue - xu、Zhilin Li、Zmm
1758189581671eaf1927626073614


谨向版本发布经理 范佳(GitHub ID:Jia Fan致以最诚挚的感谢!同时感谢所有以下代码与文档贡献者,是你们的每一次 Commit、Review 与测试,确保 2.3.12 能够如期高质量上线。Apache SeaTunnel 因你们而更精彩,让我们在下个版本继续并肩前行!


完整变动列表请查阅 Release 页面:
https://github.com/apache/seatunnel/releases/tag/2.3.12

Apache SeaTunnel

Apache SeaTunnel是一个云原生的多模态、高性能海量数据集成工具。北京时间 2023 年 6 月1 日,全球最大的开源软件基金会ApacheSoftware Foundation正式宣布Apache SeaTunnel毕业成为Apache顶级项目。目前,SeaTunnel在GitHub上Star数量已达8k+,社区达到6000+人规模。SeaTunnel支持在云数据库、本地数据源、SaaS、大模型等170多种数据源之间进行数据实时和批量同步,支持CDC、DDL变更、整库同步等功能,更是可以和大模型打通,让大模型链接企业内部的数据。




同步Demo

MySQL→Doris | MySQLCDC | MySQL→Hive | HTTP → Doris | HTTP → MySQL | MySQL→StarRocks|MySQL→Elasticsearch |Kafka→ClickHouse

新手入门

SeaTunnel 让数据集成变得 So easy!/ 3 分钟入门指南
0 到 1 快速入门 /初探/深入理解
分布式集群部署 | CDC数据同步管道 | Oracle-CDC
图片

最佳实践

OPPO | 清风|天翼云|马蜂窝|孩子王|哔哩哔哩|唯品会|众安保险|兆原数通 | 亚信科技|映客|翼康济世|信也科技|华润置地|Shopee|京东科技|58同城|互联网银行|JPMorgan
图片

测试报告

SeaTunnel VS GLUE | VS Airbyte | VS DataX|SeaTunnel 与 DataX 、Sqoop、Flume、Flink CDC 对比

图片

源码解析

Zeta引擎源码解析(一) |(二) |(三)| API 源码解析 |2.1.1源码解析|封装 Flink 连接数据库解析





仓库地址:
https://github.com/apache/seatunnel
网址:
https://seatunnel.apache.org/
Apache SeaTunnel 下载地址:
https://seatunnel.apache.org/download
衷心欢迎更多人加入!
我们相信,在Community Over Code(社区大于代码)、「Open and Cooperation」(开放协作)、「Meritocracy」(精英管理)、以及「多样性与共识决策」The Apache Way 的指引下,我们将迎来更加多元化和包容的社区生态,共建开源精神带来的技术进步!
我们诚邀各位有志于让本土开源立足全球的伙伴加入 SeaTunnel 贡献者大家庭,一起共建开源!
提交问题和建议:
https://github.com/apache/seatunnel/issues
贡献代码:
https://github.com/apache/seatunnel/pulls
订阅社区开发邮件列表 :
dev-subscribe@seatunnel.apache.org
开发邮件列表:
dev@seatunnel.apache.org
加入 Slack:
https://join.slack.com/t/apacheseatunnel/shared_invite/zt-1kcxzyrxz-lKcF3BAyzHEmpcc4OSaCjQ
关注 X.com:
https://x.com/ASFSeaTunnel


1758189590893dfb380e33dab0cdb
17581895937475d4ce5255f601542