Debezium日常分享系列之:Debezium 3.0.0.Alpha1 Released
Debezium 3 的第一个预发布版本 3.0.0.Alpha1。这个版本虽然比正常的预版本要小,但高度关注几个关键点,例如使用 Java 17/21 测试发布过程;然而,它还包括一些新功能。
一、重大改变
Java 和 Maven 要求已更改
- 此版本还改变了构建和运行 Debezium 所需的 Java 要求。此外,此版本还需要更高版本的 Maven 来从源代码构建 Debezium。
- 如果您出于任何原因打算从源代码构建 Debezium,则所有 Debezium 项目都需要使用 Java 21 和 Maven 3.9.8 进行构建。这包括主存储库、社区主导的存储库、Debezium Server、Operator 等。如果您尝试使用低于 Java 21 的 Java 版本从源代码构建 Debezium,则构建将报告 Java 版本错误,指示您使用 Java 21 或更高版本。
- 所有 Debezium 连接器都需要 Java 17 的运行时基线。这意味着,如果您不是从源代码构建,而是只是在 Kafka Connect 等运行时上部署连接器,那么 Java 17 就足够了。
- 如果您使用 Debezium Server、Debezium Operator 或 Debezium Quarkus Outbox Extension,这些组件在运行时和构建时都需要 Java 21。
- 请参阅下面的图表,快速了解 Java 和 Maven 的要求
二、新的特征和提高
MongoDB
MongoDB Sink Connector
- 一年多前,Debezium 在 Debezium 2.2 中引入了第一个基于接收器的连接器,我们很高兴地宣布将另一个基于接收器的 MongoDB 连接器纳入 Debezium 3。
- 与需要安装额外插件才能使用的 JDBC 接收器关系连接器不同,MongoDB 接收器连接器与 MongoDB 源连接器捆绑在同一个工件中。因此,如果您已经安装或使用 MongoDB 源连接器并且正在使用 Debezium 3 或更高版本,那么您还拥有 MongoDB 接收器连接器。
- 开始使用 MongoDB 的配置非常简单,下面是一个示例:
{
"connector.class": "io.debezium.connector.mongodb.MongoDbSinkConnector",
"connection.string": "...",
"topics": "topic1,topic2",
"sink.database": "targetdb",
}
- connection.string 和 sink.database 配置属性是必需的。这些定义了连接到目标 MongoDB 数据库的详细信息以及将写入更改的目标数据库的名称。
- 此外,主题配置属性是 Kafka Connect 必需的,它描述了接收器连接器将观察的主题的以逗号分隔的正则表达式列表。
三、更多内容
更多Debezium技术请参考: