Debezium发布历史102

原文地址: https://debezium.io/blog/2021/02/24/debezium-1-5-beta1-released/

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

Debezium 1.5.0.Beta1 发布
2021 年 2 月 24 日 作者: Gunnar Morling
发布 mysql postgres sqlserver cassandra oracle db2 vitess 发件箱
我很高兴地宣布 Debezium 1.5.0.Beta1发布!

此版本添加了一个全新的组件 - 基于 Web 的 Debezium UI -、对 MySQL 连接器的事务元数据支持、对 Debezium Oracle 连接器的基于 LogMiner 的捕获实现的大量改进、对 Vitess 9.0 的支持以及多得多。下面让我们探讨一些新功能。

德贝齐姆用户界面
不同的 Debezium 连接器为各种数据库设置和运行变更数据捕获源提供了强大的功能和灵活性。但这种灵活性也是有代价的:开始使用连接器可能需要一些时间来理解所有不同的选项及其语义。另一个关键方面是操作连接器,即深入了解其当前状态和指标,能够对连接器故障做出反应等等。

根据社区的反馈,我们在过去几个月中探索了图形用户界面如何帮助解决这些问题。最初的概念验证看起来非常有希望,因此我们决定继续前进,使UI成为 Debezium 项目的官方组件。仍在积极开发中,您现在已经可以尝试该 UI(在 Docker Hub 上作为容器映像提供)并使用它在 Kafka Connect 集群中设置 Debezium 连接器。

我们将在接下来的几天内在单独的博客文章中跟进有关 Debezium UI 的更多详细信息,讨论其当前状态、该组件的路线图等。

改进的基于 LogMiner 的 CDC 实施
我们当前继续关注 Oracle 的基于 LogMiner 的 CDC 实施,我们已经修复了该连接器的大量问题。其中包括:

显着提高了 DML 解析性能(DBZ-3078);LogMiner DML 语句的新手写解析器可以提高该连接器的吞吐量,现有的外部解析器实现将很快被删除

支持从多个模式捕获更改(DBZ-3009)

支持列过滤(DBZ-3167)

正确的交易元数据(DBZ-3090)

与日志文件切换和类似问题相关的几个错误修复(DBZ-2754、DBZ-3001、DBZ-3153等)

维特斯连接器
在社区成员 Kewei Shang 的领导下,Vitess 的 Debezium 连接器现在支持 Vitess 9.0 ( DBZ-3100 )。连接器还可以捕获 JSON 和 ENUM 列(DBZ-3115、DBZ-3124)的更改,并实现 Kafka Connect 的配置验证 API(DBZ-3117)。

其他特性
此版本中的进一步修复和改进包括:

Debezium MySQL 连接器可以公开有关事务边界的元数据 ( DBZ-3114 );正如1.5.0.Alpha1发布公告中所述,这是我们通过将该连接器重新定位到通用 Debezium 连接器框架上而获得的首要好处之一

用于 Postgres 的 Debezium 连接器经过 PG 13 ( DBZ-3022 )测试和验证

使用 Debezium 嵌入式 API ( DBZ-2897 )时能够自定义偏移量

CREATE OR REPLACE INDEX将MySQL 连接器与 MariaDB 结合使用时支持DDL ( DBZ-3067 )

Postgres 支持无限时间戳值 ( DBZ-2614 )

此版本总共解决了78 个问题。

一如既往,非常感谢所有做出贡献的社区成员:Adhaam Ehab、Ahmed Eljami、Bingqin Zhou、Fahim Farook、Ganesh Ramasubramanian、Harvey Yue、Kevin Pullin、Kewei Shang、Michael Cizmar、Nitin Agarwal、Russell Ballard、Shane Paul、托马斯·普雷尔、托马斯·桑顿和张一龙。

原文地址: https://debezium.io/blog/2021/03/15/debezium-1-5-beta2-released/

Debezium 1.5.0.Beta2 发布
2021 年 3 月 15 日 作者: 克里斯·克兰福德
发布 mysql postgres sqlserver cassandra oracle db2 vitess 发件箱
我们非常高兴地宣布 Debezium 1.5.0.Beta2发布!

此版本的主要功能是新的 Debezium 信令表支持、Vitess SET 类型支持,以及在我们冲刺 1.5 版本的终点线时持续关注细微改进、错误修复和完善。

总体而言,自 Beta1 发布以来,社区修复了54 个问题,我们将在下面更深入地探讨其中的一些问题。

信令表
信号表功能对于 Debezium 来说是一个巨大的里程碑。它提供基于源数据库表的命令模式,以向 Debezium 发送命令(也称为信号),以便可以采取特定操作。该框架是可扩展的,允许连接器实现超出 Debezium 核心提供的通用命令的自定义命令。在多种情况下,这可能适用,包括但不限于 PostgreSQL 主键列更改、列定义的枚举值集更改以及 Oracle 连接器的架构更改。这是一个正在孵化的功能,因此不同版本之间的行为可能会发生变化。

为了使用信号表功能,signal.data.collection必须在连接器配置中指定连接器选项。此选项指定从中发出信号请求的表的完全限定名称。如果该选项未指定或为空,则信号表功能将被禁用。

信号表本身必须提前创建,并且必须遵守以下约定:

列名 数据类型
ID

STRING
信号的唯一标识符,例如 UUID。

类型

STRING
要执行的唯一命令。

数据

STRING
命令的有效负载。

最后,必须明确地找到信号表作为连接器的包含/排除列表规范的一部分。换句话说,如果您指定要监视的表列表,则需要调整该列表以包含信号表的名称。

这项新功能有相当多的用例,我们打算在未来的版本中进行探索。让我们讨论一下此版本当前支持哪些信号。

记录信号
TYPE当信号表中的列为时,检测到日志信号log。该信号请求 Debezium 将列(有效负载)的内容DATA按原样写入连接器日志。这可用于多种目的,从调试到跟踪数据库脚本操作的进度等等。

举个例子:

INSERT INTO DEBEZIUM_SIGNALS (ID, TYPE, DATA) VALUES (‘1’, ‘log’, ‘Hello World’);
一旦该插入被提交并写入数据库的事务日志,Debezium 将识别该信号,然后Hello World使用日志级别写入连接器日志INFO。

模式改变信号
TYPE当信号表中的列为时,会检测到架构更改信号schema-changes。该信号告诉 Debezium 发出一个SchemaChangeEvent基于行列DATA(有效负载)中提供的更改的架构更改主题。列的格式DATA必须以 JSON 格式给出,格式示例如下。此外,该信号还将让 Debezium 更新其表模式结构的内存表示。

举个例子,我们有一个 PostgreSQL 表s1.a,我们想要在其中添加一个新列aa:

{
“database”: “postgres”,
“changes”: [{
“type”: “ALTER”,
“id”: “s1.a”,
“table”: {
“defaultCharsetName”: null,
“primaryKeyColumnNames”: [ “pk” ],
“columns”: [{
“name”: “pk”,
“jdbcType”: 4,
“nativeType”: 23,
“typeName”: “serial”,
“typeExpression”: “serial”,
“charsetName”: null,
“length”: 10,
“scale”: 0,
“position”: 1,
“optional”: false,
“autoIncremented”: true,
“generated”: false
}, {
“name”: “aa”,
“jdbcType”: 4,
“nativeType”: 23,
“typeName”: “int4”,
“typeExpression”: “int4”,
“charsetName”: null,
“length”: 10,
“scale”: 0,
“position”: 2,
“optional”: true,
“autoIncremented”: false,
“generated”: false
}]
}
}]
}
使用此 JSON 有效负载,信号将插入为:

INSERT INTO DEBEZIUM_SIGNALS (ID, TYPE, DATA) VALUES (‘1’, ‘schema-changes’, );
维特斯SET支持
作为 Vitess 9.0 的一部分,Vitess 团队改进了SETVStream API 中的数据类型支持。这一改进使得SETDebezium Vitess 连接器现在支持该数据类型。EnumSet此数据类型将作为现在包含列定义的所有允许值的数据类型发出SET。

其他功能和修复
除了信号表和 Vitess SET 支持之外,此版本还进行了一些其他改进和修复。

Oracle 的 Debezium 连接器现在默认使用基于 LogMiner 的捕获实现。为了使用基于 XStream 的实现,该database.connection.adapter选项必须显式设置为xstream( DBZ-3241 )。

在 Debezium 1.5 的早期版本中,Oracle 连接器开始将NUMBER(1)数据类型发出为BOOLEAN. 此行为不是由连接器隐式完成,而是已移至 OOTB 转换器,NumberOneToBooleanConverter可以根据需要使用 ( DBZ-3208 )。

SYS_IOT_OVEROracle 连接器忽略系统生成的索引组织表(以 开头的表)( DBZ-3036 )

debezium.sink.kinesis.endpointDebezium Server 的 AWS Kinesis 接收器可以通过指定( DBZ-3246 )来配置端点。

与往常一样,您可以在发行说明中找到所有已解决问题和升级过程的完整列表。

非常感谢所有为本次发布做出贡献的社区成员:Bingqin Zhou、David Seapy、Victar Malinouski、Xiao Fu、Kewei Shang、Martín Pérez、Hoa Le、Vladimir Osin、Martín Pérez和Meng Qiu!

下一步是什么?
在慢慢结束 Debezium 1.5 版本系列的工作的同时,我们还利用这个机会将 Debezium Oracle 集成到主要Debezium源代码存储库中。这样,前Debezium 孵化器存储库的所有连接器都已移至其自己的专用存储库中,或集成到主存储库中。孵化器存储库已设置为“存档”模式,允许在需要时检查其历史记录。

在 1.5 Final 之前的剩余时间内,我们计划重点关注错误修复、性能改进、文档调整和其他稳定性工作;除非出现任何不可预见的问题,基于 LogMiner 的捕获实现也将从孵化状态提升到最终版本的稳定状态。如果一切按计划进行,下周中旬将发布 CR(候选版本),然后在月底左右发布最终版本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/662005.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

总结了一下中继引擎(can中继器,TCP总机器)开发实际经验

多路数据进行中继的研究 1.数据中继的概念 数据中继是一种数据传输技术,用于在两个通信设备之间提供数字信号的传输。它利用数字信道传输数据信号,可以提供永久性和半永久性连接的数字数据传输信道。 数据中继的主要作用是提高通信质量和可靠性&#xf…

详解WebRTC rtc::Thread实现

rtc::Thread介绍 rtc::Thread类不仅仅实现了线程这个执行器(比如posix底层调用pthread相关接口创建线程,管理线程等),还包括消息队列(message_queue)的实现,rtc::Thread启动后就作为一个永不停止的event l…

Compose中的重组、state、remember

文章目录 一、前言二、示例代码三、参考链接: 一、前言 在Compose中UI采用State状态来控制UI变化,根据状态的不同来显示不同的内容,每次UI的重新变化成为重组。通过remember可以将state的数据保存起来(或者实例对象,毕竟条件不改变的话默认只…

《Pandas 简易速速上手小册》第8章:Pandas 高级数据分析技巧(2024 最新版)

文章目录 8.1 使用 apply 和 map 函数8.1.1 基础知识8.1.2 重点案例:客户数据清洗和转换8.1.3 拓展案例一:产品评分调整8.1.4 拓展案例二:地址格式化 8.2 性能优化技巧8.2.1 基础知识8.2.2 重点案例:大型销售数据分析8.2.3 拓展案…

BUUCTF-Real-[Flask]SSTI

目录 漏洞描述 模板注入漏洞如何产生? 漏洞检测 漏洞利用 get flag ​编辑 漏洞描述 Flask框架(jinja2)服务端模板注入漏洞分析(SSTI) Flask 是一个 web 框架。也就是说 Flask 为您提供工具、库和技术来允许您构…

JAVA面试题之三分布式和微服务的区别是什么?

面试题之三 分布式和微服务的区别是什么? 难度指数:3星 考察频率:50% 开发年限:3年左右 二者是隶属于不同的概念。 一.概念 微服务是系统架构的设计方式,是将复杂的业务拆分成多个微型的服务,让这些服务可以单独部署和运行。服务与服务之间可以使用RPC、OpenFeign…

基于PSO-BP神经网络的风电功率MATLAB预测程序

微❤关注“电气仔推送”获得资料(专享优惠) 参考文献 基于风电场运行特性的风电功率预测及应用分析——倪巡天 资源简介 由于自然风具有一定的随机性、不确定性与波动性,这将会使风电场的功率预测受到一定程度的影响,它们之间…

骨传导耳机的工作原理是什么?跟一般的耳机相比有什么特点?

骨传导耳机是利用骨传导技术研发而成一种新型蓝牙耳机,其传声方式很独特,不通过空气传导,而是通过人体骨骼来传递声音。 和传统的耳机相比,在佩戴方式和传声方式上都有所不同。 1、佩戴方式不同 首先就是佩戴方式不同&#xff0…

Java实现学生信息管理系统:从Excel中提取数据的实用方法

在Java中实现学生信息管理系统并从Excel中读取数据,通常适用于以下场景: 数据迁移和集成:如果你有一个现存的学生信息管理系统,该系统可能使用数据库或其他存储方式,但你想将这些数据迁移到新的系统。Excel文件可能提…

自动化测试框架:DrissionPage

自动化测试框架:DrissionPage 如果只要控制浏览器,导入ChromiumPage:如果只要收发数据包,导入SessionPage:WebPage是功能最全面的页面类,既可控制浏览器,也可收发数据包。常用1、定位元素2、爬取…

Spring Boot--08--Mybatis 之Mapper在IDEA中自动注入警告的解决方案

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 问题原因 解决方案方法1:为 Autowired 注解设置required false方法2:用 Resource 替换 Autowired方法3:在Mapper接口上加上Repo…

EXCEL VBA调用百度api识别身份证

EXCEL VBA调用百度api识别身份证 Sub BC_识别身份证()Dim SHD, SHX As WorksheetDim AppKey, SecretKey, Token, PathY As StringDim jSon, JSonA, WithHttp As ObjectDim Pic, oDom, oW, jsCode, paramsDim ARX, BRX, DRX, ERX, ZADDim StrText, StrUrl As StringDim StrA, S…

振动传感器接头MIL-C-5015玻璃烧结插座

振动传感器接头MIL-C-5015玻璃烧结插座产品主要用于加速度传感器,倾角传感器,耐高低温,耐腐蚀,适合使用恶劣环境。适用品牌有:MEGGITT,VibraSens,CTC measurement,BENTLY(本特利)等众多品牌可定…

【代码随想录-链表】环形链表 II

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

C++ 入门(五)— 头文件(Header files)

文章目录 头文件的用途使用标准库头文件使用头文件传播前向声明避免将函数或变量定义放在头文件中尖括号与双引号VSCode中添加来自其他目录的头文件 头文件保护标头保护不会阻止标头包含在不同的代码文件中pragma once总结 头文件的用途 C 代码文件(扩展名为 .cpp&…

基于Java SSM框架实现教师管理系统项目【项目源码】

基于java的SSM框架实现教师管理系统演示 JAVA简介 Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,JSP(java server p…

网络空间测绘在安全领域的应用(下)

3.漏洞感知 漏洞感知能力在当今的网络安全领域是至关重要的,而其核心技术之一是漏洞验证技术。通过对漏洞信息与产品版本的关联,系统能够更准确地感知漏洞,但仅仅依靠这种数据关联会引发一系列问题。 首先,漏洞是程序中存在的隐…

chatchat部署在ubuntu上的坑

1. 安装前要开代理,注意要下载很多东西,流量大 https://gitee.com/zhaodezan/chatchat 2. 不必要的步骤 下载模型需要先安装 Git LFS ,然后运行 $ git lfs install $ git clone https://huggingface.co/THUDM/chatglm3-6b $ git clone https://huggingface.co/B…

YOLOv5改进:下采样系列 |一种新颖的基于 Haar 小波的下采样HWD,有效涨点系列

💡💡💡本文独家改进:HWD的核心思想是应用Haar小波变换来降低特征图的空间分辨率,同时保留尽可能多的信息,与传统的下采样方法相比,有效降低信息不确定性。 💡💡💡使用方法:代替原始网络的conv,下采样过程中尽可能包括更多信息,从而提升检测精度。 收录 YO…

Java-File类

目录 前言: 1.File类概述 2.File类属性 3.File类构造方法 4.File类普通方法 前言: 在Java中操作文件主要分为:1.文件系统的操作(File类)、2.文件内容的操作(流对象)。 本节主要介绍Java中的…