Debezium 团队很高兴地宣布 Debezium 0.9.3.Final 的发布!
这主要是发布了一个错误修复版本,并且是早期 Debezium 0.9.x 版本的直接替代品,但也有一些重要的重要新功能。总体而言,已解决 17 个问题。
| 由于一些 Docker Hub 配置问题,容器镜像将稍有延迟发布。 |
新功能
0.9.3 版本带来了两项重要的功能改进
-
针对 PostgreSQL 数据库,我们收到一个功能请求,希望在丢失复制槽后(例如,故障转移到次要数据库主机后),能够对复制过程进行部分恢复(DBZ-1082)。我们没有再增加一个快照模式,而是退一步,决定通过引入服务提供商接口(SPI)来使 PostgreSQL 的快照过程更加可定制。这允许您实现并注册自己的 Java 类来控制快照过程。有关 SPI 的一种可能的自定义实现,请参阅 DBZ-1082 的问题描述,该实现基于 PostgreSQL 的
catalog_xmin属性,并选择所有在上次已知 xmin 位置之后更改的记录。要了解更多关于 SPI 的信息,请参阅 Snapshotter 合约。请注意,此功能仍处于孵化阶段,SPI 在此期间应被视为不稳定。 -
不久前,我们发布了一篇关于使用 Debezium 实现 outbox 模式来传播微服务之间数据变更的博客文章。社区成员 Renato Mefi 扩展了这个想法,并创建了一个现成的单消息转换(SMT)实现,用于将事件从 outbox 表路由到特定主题。这个 SMT 现在是 Debezium 核心库的一部分(DBZ-1169)。其使用方法很快会在文档中说明;目前,请参阅 EventRouter 类型及其附带的配置类。
Bug 修复
我们对 Debezium PostgreSQL 连接器 进行了一些修复
Debezium MySQL 连接器也进行了一些修复,尤其是在 SQL 解析器方面
现在可以使用单个 Oracle 连接器处理多个 schema(DBZ-1166)。
请查看 发行说明,了解 Debezium 0.9.3 中修复的完整问题列表。
非常感谢 Debezium 社区成员 Renato Mefi、Shubham Rawat、Addison Higham、Jon Casstevens、Ashar Hassan 和 Josh Stanfield 对本次发布的贡献!
关于 Debezium
Debezium 是一个开源的分布式平台,可以将现有数据库转变为事件流,使应用程序能够几乎即时地看到并响应数据库中已提交的每个行级更改。Debezium 构建在 Kafka 之上,并提供了 Kafka Connect 兼容的连接器,用于监控特定的数据库管理系统。Debezium 将数据更改的历史记录在 Kafka 日志中,这样您的应用程序可以随时停止和重新启动,并可以轻松地消费在未运行时错过的所有事件,确保所有事件都被正确且完整地处理。Debezium 在 Apache 许可证 2.0 下是 开源 的。