原文地址: https://debezium.io/blog/2022/07/11/debezium-1-9-5-final-released/
欢迎关注留言,我是收集整理小能手,工具翻译,仅供参考,笔芯笔芯.
Debezium 1.9.5.Final Released
July 11, 2022 by Chris Cranford
releases mongodb mysql postgres sqlserver cassandra oracle db2 vitess outbox
随着夏季的全面展开,团队高兴地宣布德贝佐姆的释放 1.9.5.Final !
这个版本主要侧重于"错误修复"和"稳定性";并且是对早期版本所有用户的推荐更新。这个版本包含 24个解决的问题 总的来说。
变化
这个版本完全侧重于稳定性和修正性。一些值得注意的变化包括:
数据重复问题使用德贝泽姆服务器上的后GRESSQL源 DBZ-5070
对甲骨文RAC装置的重复SCNS处理不当 DBZ-5245
当使用在夸克斯嵌入德贝兹时 DBZ-5251
当轨道连接器获得新的LOB数据时,承诺没有改变 DBZ-5266
数据库。历史。商店。仅此而已。捕获。表格。ddl不抑制日志 DBZ-5270
当连接到天蓝事件集线器时,去贝兹服务器失败 DBZ-5279
启用数据库。历史。商店。仅此而已。捕获。图表。ddl不限制历史主题记录 DBZ-5285
当使用抽象数据类型作为唯一索引创建表的关系模型时,快照失败 DBZ-5300
增量快照:甲骨文表名称解析不支持db名称中的周期 DBZ-5336
支持带有架构前缀的后置SQL默认值函数调用 DBZ-5340
在为捕获的表检测到不支持的采矿作业时,记录一个警告 DBZ-5351
Mysql连接器列HHHSV2不工作 DBZ-5366
当嵌套数组不包含元素时,外框JSON扩展失败 DBZ-5367
需要为Mac苹果M1进行升级 DBZ-5369
请参阅 释放说明 了解更多关于所有固定错误、更新过程等的信息.
感谢下列社区人士为德贝佐姆1.9.5.最后做出贡献: 阿尼莎 , 鲍勃·罗丹 , 查斯托福科帕 , 克兰福德 米哈伊尔·杜布罗文, , 亨利蔡 , 伊里·帕坎奇c , 帕韦金-马伦 , 罗丹 , 沃伊泰克 ,以及 延贡688 !
展望
德贝佐姆1.9发布流将在未来三个月保持当前的长期运行版本。在此期间,我们将继续评估用户报告,并根据严重程度进行微释放,以解决错误和回归。
德贝兹2.0的开发进展相当顺利。我们已经进入了开发周期的下半部分,我们将在7月底发布下一个版本时开始测试版。
在接下来的几周里,请继续关注,保持冷静,并愉快的捕捉!
原文地址: https://debezium.io/blog/2022/07/27/debezium-2.0-beta1-released/
Debezium 2.0.0.Beta1 Released
July 27, 2022 by Chris Cranford
releases mysql postgres sqlserver cassandra oracle db2 vitess outbox
我很高兴能和你分享 2.0.0.Beta1 已经被释放了!
这个版本包含了几个新特性,包括可插入的主题选择器,包括为甲骨文更改事件提交更改的数据库用户,以及作为主键的表唯一索引的改进处理。此外,还有一些打破性的改变,例如将默认方式改为多分区模式和引入debezium-storage 模块及其实现。所以,让我们更仔细地看看所有这些。
多重分配模式现在默认
许多数据库平台支持从框中取出多个租户,这意味着您可以安装一个数据库引擎,并拥有许多独特的数据库。在像sql服务器这样的情况下,这传统上需要为每个唯一的数据库进行单独的连接器部署。在过去的一年里,已经做出了巨大的努力来打破这一障碍,并引入了一种共同的方式,任何单一的连接器部署都可以连接并从多个数据库中流更改。
第一个值得注意的变化是SQL服务器连接器的配置选项,database.dbname .这一选择已被一个新的选择所取代,即database.names .由于多分配模式现在是默认的,这个新的database.names 可以使用逗号分隔的数据库名称列表指定备选办法,如下所示:
database.names=TEST1,TEST2
在本例中,连接器被配置为从同一主机安装上的两个唯一数据库中捕获更改。连接器将启动两个卡夫卡连接中的唯一任务,每个任务将同时负责从各自数据库中进行的流更改。
第二个值得注意的变化是连接器度量命名。连接器通过使用唯一名称标识的Bee来公开jmx指标。对于多个任务来说,多分区模式是默认的,每个任务都需要自己的度量库,因此命名策略的更改是必要的。
在使用SQL服务器作为示例的旧版本的Debezns中,使用下列命名策略提供了度量:
debezium.sql_server:type=connector-metrics,server=<sqlserver.server.name>,context=
在这个版本中,命名策略现在包括一个新的task JMXMBean名称中的组件:
debezium.sql_server:type=connector-metrics,server=<sqlserver.server.name>,task=<task.id>,context=
请审查您的度量配置,因为命名更改可能会在收集Debezns度量时产生影响。
德贝兹存储模块
在这个版本中,我们引入了一个新的debezium-storage 基于文件和卡夫卡数据库历史和偏移存储的工件集。这个更改是几个未来实现设置中的第一个,以支持诸如亚马逊S3、REDIS和可能的JDBC等平台。
对于通过插件工件安装连接器的用户来说,这应该是一个无缝的变化,因为所有的依赖关系都绑定在这些可下载的插件档案中。对于可能在应用程序中嵌入Debezns的用户或者正在构建自己的连接器的用户,请注意您可能需要根据使用的存储实现添加一个新的存储依赖项。
可折叠主题选择器
Debezum的默认主题命名策略将更改事件发送到指定主题database.schema.table .如果您要求以不同的方式命名主题,通常会在连接器配置中添加SMT来调整此行为。但是,在此主题名称的一个组件(可能是数据库或表名称)包含一个点(. 也许SMT没有足够的上下文。
在这个版本中,一个新的TopicNamingStrategy 引入允许完全定制这个行为直接在德贝兹。默认命名策略实现在大多数情况下应该足够了,但是如果您发现它不能提供一个定制的命名策略实现。TopicNamingStrategy 合同完全控制连接器使用的各种名称。为提供你自己的自定义策略,你会指定topic.naming.strategy 连接选项与完全限定的战略类别名称,如下所示:
topic.naming.strategy=org.myorganization.MyCustomTopicNamingStrategy
这种自定义策略不仅限于控制表映射主题的名称,还包括模式更改、事务元数据和心跳。你可以参考DefaultTopicNamingStrategy 成立 在这里 作为一个例子。这个特性还在酝酿中,我们将继续改进和发展它,随着反馈的收到。
甲骨文在更改事件中提交用户
更改事件的源信息块包含了关于更改事件起源的各种上下文。在此版本中,甲骨文连接器现在包括在捕获的更改事件中对数据库进行更改的用户。新的领域,user_name ,现在可以在源信息块中找到这个新信息。这个字段是可选的,只有在使用基于日志的实现发出更改时才可用。这个字段也可能包含UNKNOWN 如果与更改关联的用户在连接器捕获更改之前被删除。
改进表唯一索引处理
表不一定要有一个主键来被一个德贝兹连接器捕获。在主键未定义的情况下,Debezum将检查表中唯一的索引,以确定是否可以做出合理的键替换。在某些情况下,索引可能是指诸如CTID 对于后格拉斯格或ROWID 在甲骨文里。这些列不可见,也不是用户定义的,而是由数据库自动生成的隐藏的合成列。此外,索引还可以使用数据库函数来转换存储的列值,例如:UPPER 或LOWER 例如。
在这个版本中,依赖隐藏的、自动生成的列或包含在数据库函数中的列的索引不再适合作为主要的密钥替代品。这保证了在依赖索引作为主键而不是定义的主键本身时,生成的消息的主键值元组直接映射到数据库使用的相同值来表示唯一性。
其他修复和改进
在这个版本中有几个缺陷和稳定性变化,值得注意的是:
蒙戈连接器的字段排除配置不适用于名称相同但来自不同集合的字段 DBZ-4846
删除最后事件的冗余设置 DBZ-5047
重新命名docker-images 仓库和吉拉部分container-images DBZ-5048
阅读德贝司服务器用户的德贝司指标 DBZ-5235
用户输入在DBZ连接器的滤波步骤上不一致 DBZ-5246
没有检查数据库历史主题的卡夫卡达特历史创建结果导致未知部分例外 DBZ-5249
用"断管(写失败)"异常消息将Sql服务者过度执行作为可检索异常处理 DBZ-5292
在修改了主键之后,日志类型数据在源和汇之间是不一致的 DBZ-5295
原因是:java.o.,例外情况:无法从2005308603号位置读取下一个字节 DBZ-5333
增量快照:甲骨文表名称解析不支持db名称中的周期 DBZ-5336
支持带有架构前缀的后置SQL默认值函数调用 DBZ-5340
mysq8.X未签名的TinyINT转换失败 DBZ-5343
在为捕获的表检测到不支持的采矿作业时,记录一个警告 DBZ-5351
基于系统和非系统生成列的唯一索引时抛出的"无"指 DBZ-5356
Mysql连接器列HHHSV2不工作 DBZ-5366
当嵌套数组不包含元素时,外框JSON扩展失败 DBZ-5367
需要为Mac苹果M1进行升级 DBZ-5369
Aws文件b(具有蒙戈数据库兼容性)连接失败 DBZ-5371
甲骨文X流不会将提交时间戳传播到事务元数据 DBZ-5373
非第一集群返回404中的UI视图连接器配置 DBZ-5378
未按预期格式登录的委员会 DBZ-5381
类型时间戳/日期/时间:现在_时间标志值 DBZ-5384
用对卡夫卡历史主题重命名语句的解析来忽略"预先"属性 DBZ-5386
在架构更改事件中,检查约束引入了基于约束的列. DBZ-5390
支持在关系模型和JSON架构历史主题中存储扩展属性 DBZ-5396
列被作为主键引用,但在表中没有定义匹配列 DBZ-5398
使用可插入数据库支持的甲骨文时,请说明要使用哪个数据库名称来发送信号。 DBZ-5399
具有时差列默认值的时间戳,而不是在格林尼治时间 DBZ-5403
升级到卡夫卡3.1与卡夫卡2.x和卡夫卡3.0的构建兼容性 DBZ-5404
从mysql连接器上移除重复的简单监听器 DBZ-5425
总共, 59个问题 已经做好了准备。
我非常感谢所有参与这个版本的社区贡献者: 安德鲁·沃克 , 阿尼莎 , 鲍勃·罗丹 , 克兰福德 , 吉列约 , , 亨利蔡 , 侯赛因托拉比 , 伊斯梅尔·西姆塞克 , 1月 , 伊里·帕坎奇c , 马丁·梅戴克 , 弥敦科技学院 , 帕韦金-马伦 , 彭威道 , 谢尔盖·莫罗佐夫 , 沃伊泰克 ,以及 中强公 !
接下来呢?
在过去的几个月里,这个团队在Debezum2.0上取得了一些令人难以置信的进展,我们可以看到远处的终点线。其中很大一部分原因是社区为促进变革、提供反馈、测试和帮助稳定新功能而开展的工作不断增加。但是我们还没有做完,所以你可以继续期待大约3个星期后再发布一次2.0.0.Beta2,保持我们通常的节奏。
此外,我们将继续支持对1.9分支的修改,并且可能会在8月某个时候看到1.9.6的最终版本,以便在我们结束Debezum2.0.0.最后版本之前完成该版本。
所以保持冷静、安全和快乐!