我很高兴地宣布 Debezium 1.9.0.CR1 发布!
除了各种错误修复外,此版本还带来了备受期待的 Apache Cassandra 4 支持!总的来说,为这个版本修复了 52 个问题。
让我们更详细地了解 Cassandra 3 的更改和 Cassandra 4 的支持。
Cassandra 3 变更与 Cassandra 4 支持
Cassandra 3 破坏性变更
对于需要使用 Cassandra 3 的用户,在此次发布中,(孵化中的)连接器的 Maven 坐标发生了一些微小变化。Cassandra 3 的主要变化是伪影名称已更改。
<dependency>
<groupId>io.debezium</groupId>
<artifactId>debezium-connector-cassandra-3</artifactId>
<version>1.9.0.CR1</version>
</dependency> 此次发布还有一个额外的面向用户的更改,即 Cassandra 驱动程序的转变。连接配置不再直接提供在连接器属性文件中,而是必须使用单独的 application.conf 文件提供。您可以在 这里 找到驱动程序配置的完整参考,下面是一个示例。
datastax-java-driver {
basic {
request.timeout = 20 seconds
contact-points = [ "spark-master-1:9042" ]
load-balancing-policy {
local-datacenter = "dc1"
}
}
advanced {
auth-provider {
class = PlainTextAuthProvider
username = user
password = pass
}
ssl-engine-factory {
...
}
}
} 为了让 Debezium 连接器能够读取/使用此新的应用程序配置文件,需要在连接器属性文件中按如下方式设置:
cassandra.driver.config.file=/path/to/application/configuration.conf Cassandra 4 支持
对于新用户以及希望升级到 Cassandra 4 的用户,新连接器伪影的 Maven 坐标是:
<dependency>
<groupId>io.debezium</groupId>
<artifactId>debezium-connectr-cassandra-4</artifactId>
<version>1.9.0.CR1</version>
</dependency> 我们引入了一个新伪影,而不是用户可配置的开关,因为这允许两个代码库根据需要进行分歧。这使得 Cassandra 3 和 4 连接器都可以根据需要进行优化,同时我们继续以 Java 11 为基础构建 Cassandra 4 连接器。
Debezium for Cassandra 4 连接器基于 Apache Cassandra 4.0.2。如果您打算升级到 Cassandra 4,从 Debezium 的角度来看,迁移应该是相对无缝的。一旦 Cassandra 环境升级完成,按照上面 Cassandra 3 破坏性变更部分所述调整驱动程序配置,然后重新启动连接器。
我们要感谢 Štefan Miklošovič 和 Ahmed Eljami 的贡献!
其他修复和更改
展望
CR1 已经完成,预计 1.9 最终版将在本周晚些时候或下周初发布,具体取决于问题报告。
在我们展望未来时,您可以期待 Debezium 2.0 的工作将在不久的将来开始。目前的路线图是将在接下来的两个发布周期中专注于 Debezium 2.0,并计划于 2022 年 9 月底左右发布。在此期间,请注意 Debezium 1.9 在此过程中将继续获得定期更新。
关于 Debezium
Debezium 是一个开源的分布式平台,可以将现有数据库转变为事件流,使应用程序能够几乎即时地看到并响应数据库中已提交的每个行级更改。Debezium 构建在 Kafka 之上,并提供了 Kafka Connect 兼容的连接器,用于监控特定的数据库管理系统。Debezium 将数据更改的历史记录在 Kafka 日志中,这样您的应用程序可以随时停止和重新启动,并可以轻松地消费在未运行时错过的所有事件,确保所有事件都被正确且完整地处理。Debezium 在 Apache 许可证 2.0 下是 开源 的。