这是我的荣幸宣布Debezium 2.3系列的第一个版本,开云体育官方注册网址2.3.0.Alpha1!

这个版本带来了许多新的和令人兴奋的功能以及bug修复,包括Debezium状态通知,Debezium状态的存储到一个JDBC数据存储,可配置的信号通道,能够编辑连接器开云体育官方注册网址配置通过Debezium UI,维塔斯碎片的并行化处理,等等。

这个版本包含了变化59岁的问题,我们花点时间,深入其中的几个新特性和任何潜在的bug修复或打破变化值得注意!

突发的变化

开云体育官方注册网址Debezium PostgreSQL和MySQL可以配置为使用一个安全的SSL连接。对于PostgreSQL,这可以通过配置完成开云体育电动老虎机database.sslmode而对于MySQL可以做到这一点开云体育电动老虎机database.ssl.mode

使用Deb开云体育官方注册网址ezium 2.3,这种配置选项不再默认禁用(PostgreSQL)或禁用(MySQL),而是默认更喜欢(PostgreSQL)和首选(MySQL)。这意味着当试图连接使用一个加密,安全连接不可用,连接器将后备使用无担保连接在默认情况下,除非否则配置。

状态通知

开云体育官方注册网址Debezium 2.3引入了一个全新的功能叫做通知,允许Debezium发出事件可以被任何外部系统知道Debezium的生命周期的不同阶段的状态。

通知事件表示为一系列键/值的元组,用一个结构,包含数个开箱即用的字段。下面是一个简单的通知事件的一个例子。

示例通知事件
{id:c485ccc3-16ff-47cc-b4e8-b56a57c3bad2,aggregate_type:快照,类型:开始,additional_data:{}}

每个包含一个通知事件id场,一个UUID来确定通知aggregate_type通知相关的领域基于领域驱动设计的概念,类型领域,意味着得到更多细节关于聚合类型本身,和一个可选的additional_data字段由一个基于字符串的键/值对地图关于事件的附加信息。

在这个时候,有两个通知Debezium支持的事件类型:开云体育官方注册网址

  • 状态的初始快照

  • 监测增量快照

初始快照通知

最初是一致的快照捕获的现有数据连接器刚开始。一个初始快照事件将一个聚合类型的值“初始快照”和类型的事件将包括三个逻辑值之一:

跳过

代表了最初的快照是跳过。

流产

代表了最初的快照是中止。

完成

代表了初始快照已经成功结束。

下面是一个示例的一个通知完成初始快照:

例子快照完成事件
{id:5563 ae14 - 49 - f8 - 4579 - 9641 - c1bbc2d76f99,aggregate_type:初始快照,类型:完成}

增量快照通知

增量快照是一个获取现有的数据从一个配置组表在连接器积极流的变化。增量快照事件将一个聚合类型的值“增量快照”和类型将包括几个逻辑值之一:

开始

表明增量快照已经开始。

停顿了一下

表明增量快照已经暂时停了下来。

恢复

表明增量快照已经暂停已经恢复。

停止

表明增量快照已经停止。

IN_PROGRESS

表明增量快照是正在进行的。

TABLE_SCAN_COMPLETED

表示给定表的增量快照已告结束。

完成

显示所有表的增量快照已告结束。

配置通知

开云体育官方注册网址Debezium通知通过连接器的配置进行配置。下面的例子展示如何配置开箱即用的卡夫卡主题或基于日志的渠道。

使用卡夫卡主题
{notification.enable.channels:水槽,notification.sink.topic.name:开云体育官方注册网址debezium_notifications,}
使用连接器日志
{notification.enable.channels:日志}

JDBC存储模块

开云体育官方注册网址Debezium 2.3引入了一个新的存储模块实现支持模式的历史和抵消的持久性数据存储中的数据通过JDBC。对环境中你可能没有持久的文件系统,这提供了另一个选择通过远程存储,持久性存储平台。

为了利用这个新的模块,下面的依赖必须添加到您的项目或应用程序:

Maven坐标
<依赖>< groupId >io.开云体育官方注册网址debezium< / groupId >< artifactId >开云体育官方注册网址debezium-storage-jdbc< / artifactId ><版本>2.3.0.Alpha1> < /版本< / >的依赖

下面的例子展示如何配置抵消或模式历史存储通过JDBC存储模块:

配置示例抵消JDBC存储
{offset.storage.jdbc.url:< jdbc-connection-url >,offset.storage.jdbc.user:dbus,offset.storage.jdbc.password:秘密,offset.storage.jdbc.offset_table_name:开云体育官方注册网址debezium_offset_storage}
配置示例模式历史JDBC存储
{schema.history.internal.jdbc.url:< jdbc-connection-url >,schema.history.internal.jdbc.user:dbus,schema.history.internal.jdbc.password:秘密,schema.history.internal.jdbc.schema.history.table.name:开云体育官方注册网开云体育电动老虎机址debezium_database_history}

其他修复

有相当多的错误修正和稳定性变化在本版本中,一些值得注意的是:

  • 烤不同字符数组和数组日期不正确的处理dbz - 6122

  • 介绍LogMiner查询过滤模式dbz - 6254

  • 锁争用LOG_MINING_FLUSH表当多个连接器部署dbz - 6256

  • 确保连接器可以从一个过期时间戳开始一个多小时过去dbz - 6307

  • rs_id字段为空在Oracle更改事件源信息块dbz - 6329

  • JWT验证添加到HTTP客户端dbz - 6348

  • 使用PostgreSQL10 pg_replication_slot_advance这是不支持的。dbz - 6353

  • log.mining.transaction.retention。小时应该参考去年抵消而不是sysdatedbz - 6355

  • 当流切分列表支持多个任务dbz - 6365

  • 运动水槽,AWS凭据提供程序dbz - 6372

  • 烤hstore不正确的处理dbz - 6379

  • 甲骨文DDL缩小表分区的空间不能被解析dbz - 6386

  • __source_ts_ms r(读)操作日期设置为SQL Server的未来dbz - 6388

  • PostgreSQL连接器任务失败恢复流因为复制槽是活跃的dbz - 6396

  • MongoDB连接器崩溃无效简历上令牌dbz - 6402

  • 肺水肿在只读启动MySQL连接器dbz - 6440

接下来是什么?

Debez开云体育官方注册网址ium 2.3开始,我希望一个相当快速的循环α,β,最终版本在接下来的六周。我们仍然有很多事要做在这个时期,我们希望进入这个版本,所以请继续关注。当我们接近6月底,我们将开始我们的规划Debezium 2.4 !开云体育官方注册网址

同时,Red Hat下周峰会2023年在波士顿。将会有一个分组会议,雨果和克里斯将讨论新的Debezium JDBC连接器。开云体育官方注册网址如果你能参加,我们想有机会和你聊天会话之前或之后。

直到下次…

克里斯克兰福德

克里斯是一个软件工程师在Red Hat。他以前是一个Hibernate ORM小组成员现在Debezium工作。开云体育官方注册网址他住在北卡罗莱纳刚从Red Hat塔几小时。


关于Debe开云体育官方注册网址zium

开云体育官方注册网址Debezium是一个开源的分布式平台,把你现有的数据库事件流,这样应用程序就可以看到,几乎立刻回应每个提交的行级的变化数据库。开云体育电动老虎机开云体育官方注册网址Debezium之上卡夫卡并提供卡夫卡连接兼容的连接器监控特定的数据库管理系统。开云体育电动老虎机开云体育官方注册网址Debezium卡夫卡日志记录的历史数据变化,所以可以在任何时候停止并重新启动您的应用程序,可以很容易地使用它错过了所有的事件而不运行,确保所有事件处理完全正确。开云体育官方注册网址Debezium是开源Apache许可,2.0版本

参与

我们希望你发现Debezium有趣开云体育官方注册网址的和有用的,想试一试。在Twitter上关注我们@开云体育官方注册网址debezium,与我们Zulip聊天,或者加入我们的邮件列表跟社区。所有的代码是开源的GitHub上,所以在本地构建代码,帮助我们改进我们现有的连接器和添加更多的连接器。如果你发现问题或有想法如何提高Debezium,请让我们知道开云体育官方注册网址日志一个问题