自学内容网 自学内容网

Debezium发布历史158

原文地址: https://debezium.io/blog/2023/08/29/debezium-2-4-beta1-released/

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

Debezium 2.4.0.Beta1 Released
August 29, 2023 by Chris Cranford
releases mongodb mysql postgres sqlserver cassandra oracle db2 vitess outbox spanner

尽管随着我们继续推进德贝唑2.4的发展,我们仍然坚定不移,但我很高兴地宣布 2.4.0.Beta1 .

虽然此版本侧重于稳定性和错误修复,但有几个新的值得注意的功能,包括时间表支持、使用JSON有效负载的JMM通知、甲骨文连接器的度量和嵌入式的英菲尼斯潘缓冲区实现的多项改进、SQL服务器的心跳、基于SQL服务器标识的插入器的VVESSBS战略、JDBC接收器等等。让我们更详细地研究每个新功能和其他功能。

支助b
时标数据库是一个基于开放源代码的基于时间序列的数据库,基于后GERGSQL。这意味着支持时间自动化b的大量功能直接来自于现有的后行SQL连接器;然而,时间自动化b的某些方面,如块、超表和集合,却不是。

因此,如果您想开始使用Debezum2.4和时间表,那么集成就需要同时使用一个新的后置SQL连接器和一个新的连接器。TimescaleDb 单消息转换(SMT)。这两者的组合提供了从时间表环境中流出更改的能力,这些更改具有基于块、超表和聚合的适当表名。

…TimescaleDb 可通过io.debezium.connector.postgresql.transforms.timescaledb 并负责在使用块、超表和聚合时调整最终主题名称。此外,此转换将元数据头添加到更改事件中,这样您就可以相应地知道原始的块名称、块表、超表模式和表名称。

使用JSON用户数据的JMX通知
Debezum2.4改变JMDA通知提供用户数据的方式。在以前的版本中,通知使用了toString() 样式实现虽然有效,但与其他结构化程度更高的格式(如JSON)不同,它不能提供任何良好的向前或向后兼容性语义。

今后,将以JSON的形式提供JDB2通知的用户数据,从而使今后更容易和更可靠地解析和支持可扩展性,而不必担心向后兼容性。我们希望这能使这一功能更易于使用,并欢迎任何其他反馈。

甲骨文连接器基于SCN的度量
甲骨文追踪各种系统更改数,通常被称为SCN,在其JDB2指标中的值包括OffsetScn ,CurrentScn ,OldestScn ,以及CommittedScn .这些SCN值是数字的,通常会超过一个数字的上界。Long 数据类型,因此德贝兹传统上把这些值String s.

不幸的是,格拉法纳和普罗米修斯这样的工具无法与String 基于价值的,社区希望能够从度量收集框架中查看这些值,这已经被多次提出。使用Debezr2.4,这些JDB2指标会有一个小的行为变化,因为它们不再被暴露于String 但现在却暴露了BigInteger 价值观。

这种行为上的变化允许工具,如格拉法纳和普罗米修斯,现在可以自动从jmx豆中刮取这些值,用于报告和可观察性堆栈。

如果你以前为其他目的收集这些值,请注意它们不再是基于字符串的,应该被解释为BigInteger 数值向前移动。

甲骨文连接器最大交易年限度量
甲骨文连接器提供了大量的数据,包括OldestScn 表示连接器事务缓冲区中最老的系统更改号的度量值。这个SCN可以帮助我们了解事务相对于当前系统更改数的缓冲距离,CurrentScn .然而,系统更改数只是简单地说,需要使用数据库函数的数值调用来知道更改何时发生。

连接器从Debezr2.4开始,现在还将通过提供一个新的度量来跟踪最老的系统更改号的年龄OldestScnAgeInMilliseconds .这个指标是根据OffsetScn 计算该时间和度量的查询时间之间的差异,给出一个粗略的时间,在缓冲区中最老的事务的毫秒,该事务尚未提交或回滚。

如果您可能有兴趣帮助其他指标,请与我们联系,让我们知道。

嵌入式无限结构变化
甲骨文连接器支持三种不同的缓冲技术,一种是基于JVM堆,而另两种是基于使用英菲尼斯潘的非堆存储。在使用Inffiisan时,您可以选择使用远程集群,其中缓存通过远程连接存储和管理,或者使用嵌入式集群,其中集群由连接器本身在本地管理。

在使用远程英菲尼斯潘集群时,有一些集群配置作为英菲尼斯潘安装本身的一部分,这通常被称为全局或集群配置。然而,当使用嵌入式英菲尼斯潘集群时,Debezum仅仅使用了嵌入式集群的默认配置,可能并不总是为每个环境提供所有必要的行为。

德贝兹2.4引入了一种新的配置特性,log.mining.buffer.infinispan.cache.global .此属性允许为无限"全局"或"集群"配置指定XML配置。

配置示例





使用Debezum2.4,如果您正在使用无限泛嵌入式缓冲区,您现在可以安全地配置整个嵌入式全域配置,这可以允许您在使用嵌入式无限泛引擎时调整和提高整体性能。

Sql切断心跳改善
数据库在一段时间内没有发生任何相关的更改,无论是由于不活动还是由于基于配置的连接器不感兴趣而发生的更改,这种情况并不少见。在这些情况下,至关重要的是,连接器管理的偏移元数据在这些期间与偏移支持存储保持同步,这样连接器的重新启动就会像预期的那样工作。

使用Debezum2.4,如果SQL服务器更改捕获循环没有发现任何更改,或者发生的更改与连接器无关,则连接器在启用时将继续发出心跳事件。这将提高存储在不同用例的偏移支持存储中的补偿的可靠性。

无生命的命名策略
Debezum2.4.0.阿尔法2引入了一种机制,通过在标识表的关系标识符时使用碎片名作为目录来处理每个碎片的架构更改。当使用时DefaultTopicNamingStrategy 这产生了副作用,即碎片将被包括在主题名称中,这可能是不可取的。

Beta1引入了一种新的策略,使旧的行为成为TableTopicNamingStrategy .

下表显示基于不同策略的主题名称的输出差异:

策略 题目输出
DefaultTopicNamingStrategy

<topic.prefix>..

TableTopicNamingStrategy

<topic.prefix>.

为了配置表主题命名策略,包括连接器的下列配置:

topic.naming.strategy=io.debezium.connector.vitess.TableTopicNamingStrategy
JDBC接收器SQL服务器标识插入
每个数据库将不同的值插入到基于身份的列中。对于SQL服务器,这就需要IDENTITY_INSERT 在插入和禁用此功能之前。与德贝兹2.4,德贝兹JDBC接收器连接器在目标数据库中为此提供支持。

为了利用基于标识的插入,JDBC接收器连接器必须配置一个新的基于数字的属性dialect.sqlserver.identity.inserts ,可设定为true 或false .默认情况下,此功能设置为false 如果希望插入到基于标识的列中,则必须启用。

一旦启用,所有的 插入 和 更新的 行动将包括以下内容:

SET IDENTITY_INSERT ON;

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

行动。在写信给瓦尔之前,询问是不会开始的。 DBZ-6635

用自定义主题命名策略更改架构名称 DBZ-6641

在JdbcSinghk连接器中的标识符错误行为 DBZ-6682

烤UUID阵列处理不当 DBZ-6720

在解析mysqddl语句时(特定连接) DBZ-6724

阻塞快照必须从信号中获取快照配置 DBZ-6731

在PG输出连接器中使用PG输出时,(+/-)在十进制值中不支持无限大 DBZ-6758

输出箱转换会导致连接器崩溃 DBZ-6760

新文档状态提取:Add标题不存在字段 DBZ-6774

蒙戈德连接器测试在2.7-RC版本执行时严重失败 DBZ-6779

在解析mysqdl语句时,dbz崩溃(选择1)。😉 DBZ-6780

在没有任何配置文件的情况下执行Mysql连接器测试失败 DBZ-6791

在解析mysqdl语句时,dbz崩溃了(选择1+@1539:=1作为SS;) DBZ-6794

MysqlDDL解析器-重复函数未被接受 DBZ-6803

修复错误与获得弹射任务 DBZ-6820

DBZ在DDL语句上崩溃(变量中的非拉丁字符) DBZ-6821

在解析mysqDDL时,不削减大和小类型的默认值 DBZ-6824

#应该在新的现场信息随机失败 DBZ-6839

错误筛选的评论 DBZ-6840

间歇性试验失败:基础测试失败。 DBZ-6841

使用时skip.messages.without.change=true 每条记录都报告一条警告日志消息 DBZ-6843

总共, 39期 已经做好了准备。 安德烈亚斯·马滕斯 , 阿尼尔·达萨里 , 阿尼莎 , 鲍勃·罗丹 , 克里斯比尔德 , 克兰福德 ,马坦·科恩, 埃姆雷·阿克格登 , 埃里克潘贾万 , 恒鲁 , , 杰里米·福特 , 伊日诺沃特尼 , 伊里·帕坎奇c , M.阿克金姆 , 马里奥菲奥尔维塔莱 , 徐南希 , 翁德雷杰巴贝克 , 拉金德拉·当瓦尔 , 张舒兰 , 斯坦因·罗文克 , 孙小健 , 托马斯桑顿 , 沃伊泰克 , 吴振华 , 小坚太阳

下一步是什么?
当我们进入德贝佐姆2.4的β阶段时,接下来的几个星期将主要集中在"补钉和稳定"上,因为我们将继续向前迈进,在9月底最终发布。我们也是在最后一分钟更改的开放式消化器摄入方法甲骨文和一旦完成,预期不久后一个贝塔2。此外,下周早些时候将会有最后维护版本2.3.3.3,而且可能会有至少一个2.3版本,因为我们将在下个月晚些时候过渡到最终维护版本2.4,作为新的稳定版本。

此外,德贝兹社区活动的议程和日期将在本周晚些时候公布,所以要密切注意这一消息。最后,我们将在下个月晚些时候的卡夫卡峰会上介绍。如果你打算参加,并且想问专家,一定要联系我或者团队中的任何人,我们可以计划会面并讨论任何有关Debez铵和疾病预防控制中心的事情。

一如既往,如果你有任何想法或建议,你也可以与我们联系。 邮寄清单 或我们的 聊天 .


原文地址:https://blog.csdn.net/a309450028a/article/details/135878645

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!