Debezium 博客

本文最初发表在 WePay Engineering 博客

变更数据捕获 已经存在一段时间了,但一些最近的技术发展使其焕发了新的生机。特别是,使用 Kafka 作为实时流式传输数据库数据的骨干已经变得 越来越普遍

如果您想知道为什么要在 Kafka 中流式传输数据库更改,我强烈建议您阅读 微服务最难的部分:您的数据。在 WePay,我们希望集成我们的微服务和下游数据存储,以便每个系统都能访问它所需的数据。我们将 Kafka 用作数据集成层,因此我们需要一种方法将我们的数据库数据导入其中。

去年,Yelp 的工程团队发布了一系列关于他们数据管道的精彩文章。其中包括了如何将 MySQL 数据流式传输到 Kafka 的讨论。他们的架构涉及一系列自研软件来完成任务,特别是 schematizerMySQL streamer。这篇介绍引发了 Debezium 博客上关于使用 Kafka ConnectDebeziumConfluent 的 Schema Registry 构建等效架构的思考。这正是我们在 WePay 实施的架构,本文将介绍我们如何利用 Debezium 和 Kafka Connect 将我们的 MySQL 数据库流式传输到 Kafka。

随着最近的 Debezium 发布,我们很高兴地宣布,除了现有的 MySQL 和 MongoDB 连接器之外,还添加了一个新的PostgreSQL 连接器

我们很高兴地宣布,Debezium 0.4.0 现在可与 Kafka Connect 0.10.1.1 一起使用。此版本引入了新的 PostgreSQL 连接器,并对 MongoDB 连接器MySQL 连接器 进行了十几次修复,包括对 Amazon RDSAmazon Aurora(MySQL 兼容) 的初步支持。有关这些更改的详细信息,请参阅 发行说明

我们还创建了标记为 0.4latestDebezium Docker 镜像,我们在 教程 中使用了它们。

感谢 Horia、Chris、Akshath、Ramesh、Matthias、Anton、Sagi、barton 等人在此次发布、问题、讨论、贡献和问题中的帮助!

我们很高兴地宣布,**Debezium 0.3.6** 现在可以与 Kafka Connect 0.10.0.1 一起使用。此版本包含对 MySQL 连接器和 MongoDB 连接器的十几项修复。有关这些更改的详细信息,请参阅 发行说明

我们还更新了 Debezium Docker 镜像,标签为 0.3latest,这些镜像我们在 教程 中使用。

感谢 Farid、RenZhu、Dongjun、Anton、Chris、Dennis、Sharaf、Rodrigo、Tim 以及其他人在此次发布、问题、讨论、贡献和提问方面的帮助!

我们很高兴地宣布,**Debezium 0.3.5** 现在可以与 Kafka Connect 0.10.0.1 一起使用。此版本包含对 MySQL 连接器的几项修复,并增加了与 多主 MySQL 服务器 作为源一起使用的能力。有关这些更改的详细信息,请参阅 发行说明。我们还更新了标记为 0.3latestDebezium Docker 镜像,我们在 教程 中使用了这些镜像。

其中一项修复非常重要,因此**我们强烈建议所有用户从所有早期版本升级到此版本。**在以前的版本中,MySQL 连接器可能会在未完成事务中的所有更新的情况下停止,并且当连接器重新启动时,它会从下一个事务开始,因此可能无法捕获前一个事务中的某些更改事件。此版本修复了此问题,因此在重新启动时,即使在事务中间,它也将始终从中断的地方继续。请注意,此修复仅在连接器升级并重新启动后才生效。有关更多详细信息,请参阅 此问题

感谢 Akshath、Anton、Chris 以及其他人在此次发布、问题、讨论、贡献和提问方面的帮助!

版权所有 © Debezium 及其作者。保留所有权利。有关我们的商标详情,请访问我们的 商标政策商标列表。第三方商标属于其各自所有者,在此提及并不表示任何认可或关联。
×