今天,我非常高兴地宣布 Debezium 2.1.0.Final 已发布!
您可能最近注意到 Debezium 在过去几周里有些沉默。不,我们并没有离开。事实上,谷歌的精灵们辛勤工作,为您带来了圣诞树下的礼物——Debezium Spanner 连接器。
| Release 2.1.0.Final 不包含强制性依赖。此问题已在 2.1.1.Final 热修复版本中得到解决。 |
经过大量紧张的工作,我们想介绍 Nancy Xu,她是 Google Cloud Spanner 分布式数据库的 Debezium Spanner 连接器 实现的主要工程师。该连接器本身目前处于孵化阶段,尚未完全实现所有功能(例如,尚不支持初始快照)。但对于需要强大 Spanner 到 Kafka 流式传输实现的场景,它已准备好投入通用使用。
初始发布提供了
尽管这个消息令人兴奋,但这并不是 Debezium 提供的唯一新功能。此次发布还带来了一系列不错的额外改进。
-
Vitess 连接器支持初始快照。这是一项全新的功能,意味着现在新的 Vitess 连接器实例的默认行为是快照当前表内容,然后切换到流式传输。
-
从 Debezium 2.0 开始,我们提取了一组接口来提供额外的可插拔持久化存储。Redis 偏移量和内部模式历史存储已转换为模块,现可通用使用。
-
MySQL 连接器处理
TRUNCATE TABLE命令。检测到该命令时,会在表主题中发出一个t消息。此功能是可选的,默认禁用。 -
Kafka Connect 提供了所谓的
predicates,使用户能够有条件地应用转换。Debezium Engine 和 Debezium Server 也支持相同的功能,并且配置方式与 Kafka Connect 相同。 -
PostgreSQL 连接器与 PostgreSQL 15 兼容。
-
Cassandra 连接器从一开始在代码库编写和连接器部署方面就有些特立独行。这意味着当时只支持 Kafka 作为目的地。现在该连接器已被重写,可以在 Debezium Server 中运行,因此任何支持的接收器都可以用作目的地。
-
Nats JetStream 是 Debezium Server 提供的新接收器。
-
Kafka Connect 默认根据消息主键计算主题分区号。通过新的
ComputePartition,可以定义一个按表分的列列表来显式计算和设置分区号。 -
PostgreSQL 在消息记录到 Kafka 时刷新 LSN(从而截断 WAL)。对于偏好手动 WAL 管理的场景,可以禁用此行为。
-
MongoDB 连接器始终从集群的主节点连接并进行流式传输。现在不再需要这样,并且更倾向于使用非主节点。
其他修复和改进
在 Debezium 2.1 的整个开发过程中,有许多错误修复、稳定性更改和改进。总而言之,本次发布共修复了 149 个问题。
非常感谢社区所有为这个主要版本做出贡献的贡献者:Masazumi Kobayashi, Andrey Pustovetov, Anisha Mohanty, Balázs Sipos, Bob Roldan, Bobby Tiernay, Chris Cranford, Egyed Tamas, Enzo Cappa, Erdinç Taşkın, Gabor Andras, Gunnar Morling, Harvey Yue, Jakub Cechacek, Jeremy Ford, Jiri Novotny, Jiri Pechanec, Keri Harris, Marcelo Avancini, Mario Fiore Vitale, Mark Lambert, Martin Medek, Mike Kamornikov, Nancy Xu, Nir Levy, Ondrej Babec, Poonam Meghnani, Praveen Burgu, Raúl Estrada, Robert Roldan, Sahap Asci, Stefan Miklosovic, Subodh Kant Chaturvedi, Vojtech Juranek, Wu Zhenhua, Xuan Shen, Yohei Yoshimuta, tooptoop4!
下一步是什么?
那么,我们下个季度的初步计划是什么?您可以期待的一些潜在功能包括:
-
JDBC 接收器连接器的初步工作
-
可配置的信号通道
-
JDBC 和 S3 历史和偏移量存储支持
一如既往,此路线图深受社区(也就是您)的影响。因此,如果您希望看到任何特定项目,请告诉我们。
圣诞快乐,新年快乐 2023!
继续前进,不断向上!
关于 Debezium
Debezium 是一个开源的分布式平台,可以将现有数据库转变为事件流,使应用程序能够几乎即时地看到并响应数据库中已提交的每个行级更改。Debezium 构建在 Kafka 之上,并提供了 Kafka Connect 兼容的连接器,用于监控特定的数据库管理系统。Debezium 将数据更改的历史记录在 Kafka 日志中,这样您的应用程序可以随时停止和重新启动,并可以轻松地消费在未运行时错过的所有事件,确保所有事件都被正确且完整地处理。Debezium 在 Apache 许可证 2.0 下是 开源 的。