Debezium日常分享系列之:Debezium 2.6.2.Final发布

Debezium日常分享系列之:Debezium 2.6.2.Final发布

  • 一、新功能和改进
    • 1.Oracle 数据库查询过滤超过 1000 个表
  • 二、修复和稳定性改进
    • 1.PostgreSQL 偏移刷新竞争条件
    • 2.Avro 兼容性

一、新功能和改进

1.Oracle 数据库查询过滤超过 1000 个表

Debezium Oracle 连接器允许使用 log.mining.query.filter.mode 将表包含和排除列表配置为数据库查询的一部分,以提高效率。将此配置属性设置为 in 值时,将使用 SQL in 子句构造查询。在 Oracle 中,内子句仅限于 1000 个元素,如果您的连接器配置超出此限制,查询将无法执行。

Debezium 2.6 通过创建正好包含 1000 个元素的子存储桶来解决此问题,并且如果表包含和排除列表太大,则使用由析取分隔的多个内从句构建查询。这改善了用户体验,允许单个连接器使用查询过滤模式,通过一次部署捕获一千多个表,而无需诉诸正则表达式。

二、修复和稳定性改进

1.PostgreSQL 偏移刷新竞争条件

Debezium PostgreSQL 连接器要求我们不仅将偏移量元数据发布到 Kafka 来处理连接器重新启动,而且连接器还必须将这些详细信息刷新到数据库的底层复制槽,以防止 WAL 无限增长。

举个例子,假设我们对 LSN 1 和 2 有两个更改。这两个更改分别写入两个不同的分区 A 和 B。由于这种情况是异步发生的,因此可能对分区 B 的写入成功,而对分区 A 的写入失败。

如果 Debezium 在 A 之前收到分区 B 的确认,连接器会将 WAL 确认的 LSN 同步为 2。如果连接器在确认分区 A 之前失败或由于重新平衡而重新启动,则在连接器重新启动时,LSN 1 的更改将丢失。

此问题已在 Debezium 2.6 及以后版本中得到修复,并且复制槽的已确认 LSN 将正确匹配主题中的状态。

2.Avro 兼容性

在 Debezium 2.5 中,我们引入了几个新的时间戳字段 ts_us 和 ts_ns,它们表示以微秒和纳秒为单位的基于毫秒的时间值。不幸的是,这些字段没有以兼容的方式引入给使用 Avro的用户。

我们调整了更改事件架构,使得引入的新字段是可选的,使更改事件架构与旧版本兼容,以便用户可以在使用 Avro 时升级到 Debezium 2.6 或更高版本而不会出现问题。

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

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

相关文章

能在电脑和手机上使用的便签app 好用的便签软件

随着科技的日新月异,越来越多的软件被开发出来,极大地便利了我们的工作和生活。其中,便签软件凭借其便捷的记录功能,受到了广大用户的喜爱。特别是那些能在电脑和手机上同步使用的便签app,更是为我们的工作和生活带来了…

【阿里YYDS】通义千问正式开源 Qwen2

Qwen2–72B正式开源,性能全面超越开源模型Llama3-70B,也超过文心4.0、豆包pro、混元pro等众多中国闭源大模型。 在过去一段时间里,Qwen系列模型从Qwen1.5升级到Qwen2,Qwen2分5个尺寸,包括Qwen2-0.5B、Qwen2-1.5B、Qwen…

Nice Mind 手机版本的思维导图,最新V8.9.0版本,无内购!

这是一款非常好用的手机思维导图APP,为了防止和谐,名字就不说了,软件可以帮助用户快速制作思维导图,不管什么类型的都可以直接使用。如果需要电脑版本的思维导图,可以看置顶文章的另一款软件。 软件获取方式&#xff…

PostgreSQL基础(十):PostgreSQL的并发问题

文章目录 PostgreSQL的并发问题 一、事务的隔离级别 二、MVCC PostgreSQL的并发问题 一、事务的隔离级别 在不考虑隔离性的前提下,事务的并发可能会出现的问题: 脏读:读到了其他事务未提交的数据。(必须避免这种情况&#xf…

XML语法规则介绍及总结

XML解析库tinyxml2库使用详解-CSDN博客 一、基本语法 XML (Extensible Markup Language) 是一种标记语言,用于描述和存储数据。它的语法规则如下: 1.1 文档结构 XML 文档必须有一个根元素,所有其他元素都必须嵌套在根元素内部。 XML 文档可以包含元素、属性、文本内容和注释…

TCP攻击是怎么实现的,如何防御?

TCP(Transmission Control Protocol)是互联网协议族中的重要组成部分,用于在不可靠的网络上提供可靠的数据传输服务。然而,TCP协议的一些特性也使其成为攻击者的目标,尤其是DDoS(Distributed Denial of Ser…

安装windows11系统跳过微软账号登录,使用本地账号登录方法

在安装win11系统,进行到如图下所示界面的时候,暂停下 我们可以按下键盘的ShiftF10按键(部分电脑是FnShiftF10),这时屏幕会出现命令行窗口,如图下所示 我们需要在命令行内输入代码oobe\bypassnro.cmd然后回车…

[ 网络通信基础 ]——网络的传输介质(双绞线,光纤,标准,线序)

🏡作者主页:点击! 🤖网络通信基础TCP/IP专栏:点击! ⏰️创作时间:2024年6月8日14点23分 🀄️文章质量:94分 前言—— 在现代通信网络中,传输介质是数据传…

09 platfrom 设备驱动

platform 设备驱动,也叫做平台设备驱动。请各位重点学习! 1、驱动的分离与分层 1)驱动的分隔与分离 Linux 操作系统,代码的重用性非常重要。驱动程序占用了 Linux 内核代码量的大头,如果不对驱动程序加以管理,用不了多久 Linux 内核的文件数量就庞大到无法接受的地步。…

手猫助手Agent技术探索总结

随着LLM的发展,ChatGPT能力不断增强,AI不断有新的概念提出,一种衍生类型的应用AI Agent也借着这股春风开启了一波话题热度,各种初创公司,包括Open AI内部也都在密切关注着AI Agent领域的变化。阿里集团内的AI团队也有很…

three.js指南

threejs 相关资料 threejs 官网threejs 案例 安装(Installation) 使用 NPM 和构建工具进行安装 对于大多数用户而已,从 npm 包注册表中心 安装并使用 构建工具 会是一个更推荐的方案。因为项目需要的依赖越多,就越有可能遇到静…

限时限量!6.18云服务器大促盘点,错过一次,再等一年!

随着云计算技术的飞速发展,云服务器已成为企业和个人构建和扩展在线业务的首选平台。特别是在大型促销活动如618年中大促期间,云服务提供商纷纷推出极具吸引力的优惠,以降低用户上云的门槛。以下是对当前市场上几个主流云服务提供商的优惠活动…

C++第二十五弹---从零开始模拟STL中的list(下)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】 目录 1、函数补充 2、迭代器完善 3、const迭代器 总结 1、函数补充 拷贝构造 思路: 先构造一个头结点,然后将 lt 类中的元…

计算机视觉与深度学习实战,Python工具,多尺度形态学提取眼前节

一、引言 在医疗影像诊断领域,眼前节图像的准确分析对于眼科疾病的诊断至关重要。近年来,随着计算机视觉和深度学习的快速发展,越来越多的研究者开始尝试利用这些技术来辅助医疗影像的解读。其中,多尺度形态学作为一种有效的图像处理工具,在眼前节图像的分割和特征提取中展…

g++ 预处理 编译 汇编 链接 命令

g 预处理 编译 汇编 链接 命令 在命令行中使用 g 预处理、编译、汇编和链接源代码文件通常遵循以下步骤: 预处理(Preprocessing):将源代码文件转换为经过预处理器处理的中间文件。 g -E source.cpp -o source.i 编译&#xff…

柴油十六烷值检测 液压油硫含量检测 变压器油检测

检测的油品包括:柴油、润滑油、液压油、机油、汽油、以及一些工业用油等。 柴油检测项目GB19147-2013:氧化安定性、硫含量、酸度、10%蒸余物残炭、灰分、铜片腐蚀、水分、机械杂质、润滑性、多环芳烃、运动粘度、凝点、冷滤点、闪点、十六烷值、馏程、密…

什么是Docker ?

在软件开发的星辰大海中,有一个神奇的技术,它能够将应用程序及其依赖环境封装在一个轻量级的、可移植的容器中。这项技术就是Docker。它不仅简化了应用的部署流程,还让开发和运维之间的界限变得模糊,使得跨平台部署变得前所未有的…

如何搭建跨境电商独立站||搭建跨境电商独立站必须具备的功能板块设计

在搭建跨境电商独立站时,需要确保网站具备一系列关键的功能板块,以提供用户友好的购物体验并确保业务的顺利进行。以下是这些功能板块的详细归纳: 注册登录与身份验证: 用户注册与登录:允许用户创建账户,通…

52.Fork Join线程池

介绍 jdk1.7之后加入的新的线程池的实现。 实现一种分治的思想。 适用于能够进行任务拆分的cpu密集型运算。 任务拆分 将一个大任务拆分为算法上相同的小任务,直至不能拆分可以直接求解。例如跟递归相关的一些计算,如归并排序、斐波那契数列都可以利用分治的思想。 For…

动态规划学习(混合背包,有依赖的背包,以及背包思想)

混合背包的定义: 混合背包问题就是混合01背包、完全背包和多重背包,可供选择的物体i可能有一个、或者无数个、或者有限个。 所以,就不要考虑这么多了,直接分这三种情况考虑就行!! 样例: for(…