Debezium发布历史126

2024-02-14 09:44
文章标签 历史 发布 126 debezium

本文主要是介绍Debezium发布历史126,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文地址: https://debezium.io/blog/2022/09/16/debezium-2.0-beta2-released/

欢迎关注留言,我是收集整理小能手,工具翻译,仅供参考,笔芯笔芯.

Debezium 2.0.0.Beta2 Released
September 16, 2022 by Chris Cranford
releases mysql postgres sqlserver cassandra oracle db2 vitess outbox

我很高兴地宣布 2.0.0.Beta2 !

这个版本包含了几个破坏性的更改、稳定性修正和错误修正,所有这些都使我们更接近于2.0.0.最后。总的来说,这个版本包含了 107个问题 已经修好了。

如果您打算升级到2.0.0.Beta2,我们强烈建议您在升级之前阅读发布说明,以了解所有破坏更改。下面值得注意的变化是我们将在这篇博文中报道的,其中一些正在打破:

[breaking] 新连接器属性名称空间

[可能破裂] 所有事件模式适当命名和版本化

[可能破裂] 删除操作现在默认包括截断事件

Mysql宾基压缩支持

卡珊德拉4个增量承诺日志支持

暂停和恢复暂停的增量快照

为增量快照定制SQL过滤

现在添加到表中的信号集合自动包含列表

多任务连接器支持

新连接器属性名称空间
进入Debezum2.0的最大改革之一是引入了新的连接器属性名称空间。许多连接器属性已经重新定位,使用了新名称。这是一个破坏性的更改,在升级过程中影响到大多数(如果不是全部)连接器的部署。

德贝兹以前使用前缀"数据库。"具有众多不同的连接器属性。其中一些属性是直接传递给JDBC驱动程序的,在其他情况下则传递给数据库历史实现的,等等。不幸的是,我们识别了一些情况,其中一些属性被传递到不打算实现的底层实现中。虽然这并没有创建任何类型的回归或问题,但是如果有属性名称冲突,它可能会引入一个未来的问题,例如,一个与"数据库匹配的JDBC驱动器属性。前缀德贝兹接头属性。

以下描述连接器属性的更改

所有配置之前都以database.history. 现在要用前缀schema.history.internal. 相反。

所有JDBC通过以前指定的选项database. 前缀现在应该用前缀driver. 相反。

…database.server.name 连接器属性改名为topic.prefix .

蒙戈数据库mongodb.name 连接器属性与使用一致topic.prefix 相反。

同样,请在部署之前审查连接器配置并相应调整。

所有德贝兹事件模式都被命名和版本化
随着模式定义的发布,Debezum更改事件会被发出,该定义包含有关字段的元数据,如类型、是否需要,等等。在前几次的Debezns的迭代中,一些架构定义没有显式名称,也没有显式的版本化。在这个版本中,我们已经转移到确保所有模式定义都有一个明确的名称和与它们相关的版本。这种改变的目的是帮助将来事件结构的兼容性,特别是对于那些使用模式注册表的人。但是,如果您当前使用的是架构注册表,请注意,在升级过程中,此更改可能导致架构兼容性问题。

删除操作默认截断事件
德贝兹支持通过包括skipped.operations 连接器属性在连接器配置中。如果您只对某个操作子集感兴趣,例如只对插入和更新感兴趣,而对删除感兴趣,那么这个功能将非常有用。

一个特定的事件类型,截断(t ),仅由关系连接器的一个子集支持,这些事件是否被跳过并不一致。在这个版本中,我们把skipped.operations 这样,如果连接器支持截断事件,默认情况下将跳过这些事件。

请回顾以下规则:

连接器支持截断事件,而不是甲骨文连接器

连接器配置没有指定skipped.operations 在配置中

如果以上所有内容都是真实的,那么连接器的行为将在升级后改变。如果您希望继续发出截断事件,skipped.operations=none 将需要配置。

Mysql宾基压缩支持
在这个版本中,Debezum现在支持读取使用压缩启用的双日志条目。在第8.20.20版本中,mysql增加了使用ZSTD算法压缩宾日志事件的能力。要启用压缩,必须切换binlog.transaction_compression 在mysql服务器上的变量ON .当启用压缩时,绑定日志的行为与以往一样,除了对绑定日志条目的内容进行压缩以保存空间,并以压缩格式复制到副本,这大大降低了大型事务的网络开销。

如果您有兴趣有关mysql宾基压缩的信息,您可以参考 二进制日志事务压缩 为了了解更多的细节,可以在mysql文档中找到部分。

卡珊德拉4个增量承诺日志支持
卡珊德拉4号 通过增加功能,改进了与疾病预防控制中心的集成,当F同步操作发生时,卡珊德拉将更新一个基于CDC的索引文件,以包含最新的偏移值。这个索引文件允许cdf实现读取到被认为是持久的卡珊德拉偏移。

在这个版本中,Debezum现在使用这个基于CDC的索引文件来消除在处理来自卡珊德拉以前存在的疾病控制中心事件时固有的延迟。这将使卡珊德拉的使用者在疾病预防控制中心得到了大幅度的改进,并激励他们考虑卡珊德拉4号对卡珊德拉3号。

暂停和恢复
增量快照已成为DEBeZMI中的一个不可或缺的特性。增量快照特性允许用户出于各种原因在一个或多个集合/表上重新运行快照。增量快照最初是以 开始 信号。我们最终增加了 停止 正在进行的增量快照或能够从正在进行的增量快照中删除集合/表的子集。

在这个版本中,我们在现有的信号基础之上构建了两个新的信号,一个是 暂停 一个正在进行的增量快照,然后是另一个 简历 如果之前已经暂停,则增量快照。暂停一个增量快照,pause-snapshot 必须发出信号,并恢复,resume-snapshot 可以使用信号。

这两个新的信号可以使用信号表策略或mysql的卡夫卡信号主题策略来发送。请参阅 信号支持文件 关于信号和它们如何工作的详细信息。

为增量快照定制SQL过滤
虽然不常见,但可能会出现连接器配置错误等情况,即需要将特定记录或记录子集重新发送到主题中。遗憾的是,增量快照传统上一直是一个全有或全无的流程类型,我们将从集合或表中重新释放所有记录,作为快照的一部分。

在这个版本中,一个新的additional-condition 属性可以在信号有效载荷中指定,允许信号指定基于sql的谓词来控制增量快照中应包含哪些记录子集,而不是默认的 全部排 .

下面的示例演示了为products 但不是把表中的所有行都发送到主题,而是additional-condition 指定属性以限制快照仅发送与产品ID相关的事件12 :

{
“type”: “execute-snapshot”,
“data”: {
“data-collections”: [“inventory.products”],
“type”: “INCREMENTAL”,
“additional-condition”: “product_id=12”
}
}
我们相信这种新的增量快照功能将会非常有帮助,因为有很多原因,在只需要一个数据子集的情况下,不必总是重拍所有行的快照。

自动添加信号收集,以包括过滤器
在前几版的Debezns中,用于增量快照的信号集合/表必须手动添加到您的table.include.list 连接器属性。这个版本的一个大主题是对增量快照的改进,所以我们也利用这个机会对其进行了简化。从这个版本开始,Debezns将自动地将信号集合/表添加到表包含过滤器中,从而避免用户手动添加它。

此更改不会造成任何兼容性问题。连接器配置,已包括table.include.list 酒店将继续运行,不需要任何更改。然而,如果您希望将您的配置与当前行为相匹配,您还可以安全地从table.include.list ,德贝司会自动为你处理这个。

多任务连接器支持
之前允许使用两种完全取决于连接器配置是否指定任何碎片细节的不同模式来操作VIFSIS连接器。不幸的是,在这两种情况下,每一种情况都导致了一个单一的任务,负责执行V流处理。对于具有很多碎片的更大的生命体装置,这个架构可能会开始显示延迟问题,因为它可能无法跟上所有碎片的所有变化。更复杂的是,在指定碎片详细信息时,需要手动在集群中解析碎片,每个碎片启动一个单一的Debezu连接器,这不仅容易出错,而且更重要的是,可能会导致部署许多德贝兹连接器。

生命社区认识到这一点,并寻求从维护和错误的角度解决所有这些问题。在Debezum2.0Beta2中,VIDSES连接器现在通过一个发现机制自动解决碎片,这与蒙戈数据库的机制非常相似。这个发现机制将在多个任务中分配负载,允许根据连接器允许的任务的最大数量,在每个碎片或碎片列表中运行一个任务的一次Debezns部署。

在升级过程中,维特斯连接器将自动将偏移存储迁移到与多任务行为一起使用的新格式。但是要注意,一旦你升级了,你将无法降级到早期版本,因为偏移存储格式将会改变。

其他修复和改进
在这个版本中有许多缺陷和稳定性变化,值得注意的是:

增量快照事件的源信息输出错误数据 DBZ-4329

否决内部密钥/价值转换器选项 DBZ-4617

"没有记录的最大LNS"日志消息可以在低活动数据库中发布 DBZ-4631

REDIS汇配置属性不会传递到数据库历史 DBZ-5035

将SQL服务器驱动程序升级到10.2.1.JRE8 DBZ-5290

不重试失败请求 DBZ-5307

当嵌套数组不包含元素时,将蒙戈布文档转换为卡夫卡连接架构失败 DBZ-5434

在同一线程上复制SCNS DBZ-5439

反对所有连接器的遗留主题选择器 DBZ-5457

删除数据库上JDBC连接的依赖关系 DBZ-5470

错过在启动FIDAulTREG-外推策略连接器之前的RGEX属性验证 DBZ-5471

在使用带有引用标识符的表空间子句时,创建索引DDL无法解析 DBZ-5472

当输出框确定其架构时,它没有正确检查数组一致性 DBZ-5475

输入日志的错误统计数字 DBZ-5476

移除SQL服务器源时安培模式 DBZ-5477

在蒙戈德5中故障转移时,德贝兹连接器任务没有重试 DBZ-5479

为信号表故障提供更好的错误报告 DBZ-5484

甲骨文数据泵DDL无法解析 DBZ-5488

升级后的SQL驱动器到42.4.1 DBZ-5493

Mysql连接器解析DDL语句在包括关键字"桶"时失败 DBZ-5499

在重新数据库历史中重复呼叫配置验证和记录() DBZ-5506

无法解析ddl语句:错误匹配的输入"引擎" DBZ-5508

在SQL服务器文档中使用"数据库.db名称" DBZ-5516

记录程序DML解析器错误地解释了连接操作符在引用的列值内 DBZ-5521

Mysql连接器DDL解析器不解析所有特权 DBZ-5522

使用基于jon的检查约束从句创建表,导致多重分配异常 DBZ-5526

在历史恢复中的逻辑架构之前优先选择DDL是禁用的 DBZ-5535

嵌入式引擎应使用源端上下文初始化连接器 DBZ-5534

支持空列标识符 DBZ-5550

使用Tccl作为默认的类加载器来加载接口实现 DBZ-5561

字节无效。 DBZ-5569

自动主题创建列表的语言类型 DBZ-5573

升级Mysql–连接器-Java库版本 DBZ-5574

生命线:把手意外地关上。 DBZ-5579

分析更改SQL时出错 DBZ-5587

外地验证错误对正、非零预期具有误导性 DBZ-5588

Mysql连接器无法处理重命名/更改列语句的区分大文本 DBZ-5589

不允许时间戳的文字 DBZ-5592

甲骨文DDL不支持对具体化视图的评论 DBZ-5595

甲骨文DDL不支持空的默认情况 DBZ-5605

不支持数据类型 DBZ-5609

总共, 107个问题 已经做好了准备。

我非常感谢所有参与这个版本的社区贡献者: 艾哈迈德·埃尔贾米 , 亚历山大施瓦茨 , 阿列克斯·卢布扬斯基 , Gabor[Andras], 阿尼莎 , 鲍勃·罗丹 , 克兰福德 , 克劳斯易卜生 , 德杰特·萨卡尔 , 加博尔·安德拉斯 , 贡纳·莫林 , 恒鲁 , , 亨利蔡 , 王英基 , 杰克布切切克 , 扬尼克·斯坦曼 , 杰里米·福特 , 伊日诺沃特尼 , 伊里·帕坎奇c , 卡特琳娜·加里耶娃 , 马里克·温克勒 , 马丁·梅戴克 , 尼廷查布拉 , 第二季及第二季 , 罗丹 , 鲁德·H.G.范托尔 , 徐智权 , 谢尔盖·莫罗佐夫 , 斯特凡·米科洛维奇 , 拉马嫩卡 , 沃桑 , 沃伊泰克 , 中强公 , 合龙 张 , 崔世杰 ,以及 민규 김 !

接下来呢?
随着德贝兹2.0贝塔2的释放,我们将在最后一段时间内向2.0.0.决赛进发。该社区预计在9月底前将推出CR1,10月中旬前将推出最后的CR1。

另外,我们的贡纳莫林和我将是即将到来的 夸克斯洞察力 播客,第103集。我们将讨论德贝齐斯和夸克斯,德贝齐斯如何利用夸克斯的力量,一个在夸克斯应用程序中嵌入德贝齐斯的虚拟操作方法,并讨论德贝齐斯2.0的所有新特性。一定要看播客,让我们知道你的想法!

这篇关于Debezium发布历史126的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/708146

相关文章

Debezium 与 Apache Kafka 的集成方式步骤详解

《Debezium与ApacheKafka的集成方式步骤详解》本文详细介绍了如何将Debezium与ApacheKafka集成,包括集成概述、步骤、注意事项等,通过KafkaConnect,D... 目录一、集成概述二、集成步骤1. 准备 Kafka 环境2. 配置 Kafka Connect3. 安装 D

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

Linux Mint Xia 22.1重磅发布: 重要更新一览

《LinuxMintXia22.1重磅发布:重要更新一览》Beta版LinuxMint“Xia”22.1发布,新版本基于Ubuntu24.04,内核版本为Linux6.8,这... linux Mint 22.1「Xia」正式发布啦!这次更新带来了诸多优化和改进,进一步巩固了 Mint 在 Linux 桌面

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

高效+灵活,万博智云全球发布AWS无代理跨云容灾方案!

摘要 近日,万博智云推出了基于AWS的无代理跨云容灾解决方案,并与拉丁美洲,中东,亚洲的合作伙伴面向全球开展了联合发布。这一方案以AWS应用环境为基础,将HyperBDR平台的高效、灵活和成本效益优势与无代理功能相结合,为全球企业带来实现了更便捷、经济的数据保护。 一、全球联合发布 9月2日,万博智云CEO Michael Wong在线上平台发布AWS无代理跨云容灾解决方案的阐述视频,介绍了

Vue3项目开发——新闻发布管理系统(六)

文章目录 八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染 4、退出功能实现①注册点击事件②添加退出功能③数据清理 5、代码下载 八、首页设计开发 登录成功后,系统就进入了首页。接下来,也就进行首页的开发了。 1、页面设计 系统页面主要分为三部分,左侧为系统的菜单栏,右侧

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository。如果采用原始直接打包放到lib目录的方式进行处理,便对项目的管理带来一些不必要的麻烦。例如版本升级后需要重新打包并,替换原有jar包等等一些额外的工作量和麻烦。为了避免这些不必要的麻烦,通常我们

禅道Docker安装包发布

禅道Docker安装包发布 大家好, 禅道Docker安装包发布。 一、下载地址 禅道开源版:   /dl/zentao/docker/docker_zentao.zip  备用下载地址:https://download.csdn.net/download/u013490585/16271485 数据库用户名: root,默认密码: 123456。运行时,可以设置 MYSQL_ROOT_P