当前位置: 首页 > news >正文

Debezium日常分享系列之:Debezium 2.7.0.Beta1发布

Debezium日常分享系列之:Debezium 2.7.0.Beta1发布

  • 一、重大变化
    • 1.快照工件
    • 2.Oracle
  • 二、新功能和改进
    • 1.在 z/OS 上支持 Db2
    • 2.NATS JetStream 接收器身份验证改进
    • 3.JDBC 接收器 MariaDB 方言支持
    • 4.JMX 导出器添加到 Debezium 服务器
    • 5.使用 Debezium Operator 启用 JMX Exporter
    • 6.快照和流之间的可选延迟

一、重大变化

1.快照工件

Debezium 快照之前已发布到 oss.sonatype.org。 Sonatype 已停用此存储库,并将其替换为 s01.oss.sonatype.org。如果您希望获取 Debezium 快照工件,请务必迁移您的脚本和资源以使用新的基础设施。

2.Oracle

在以前的版本中,零标度的 NUMERIC 数据类型会忽略decimal.handling.mode,这会在使用非默认十进制处理模式配置时阻止这些值作为 FLOAT64(双精度)或基于 STRING 的类型发出。我们调整了行为,以便零刻度数字数据类型遵循小数处理模式。

如果使用与架构注册表的严格兼容性,这将导致架构不兼容的问题,并且需要调整架构注册表中的兼容性设置。

二、新功能和改进

1.在 z/OS 上支持 Db2

Debezium 2.7 引入了对在 z/OS 平台上使用 Db2 连接器的孵化支持。为了使 Db2 连接器能够与 z/OS 配合使用,需要多个配置选项来切换连接器以与 z/OS 平台数据库配合使用。

新的连接器属性

{...,"db2.platform": "ZOS","cdc.control.schema": "ASNCDC","cdc.change.tables.schema": "ASNCDC"
}

在 z/OS 模式下运行的主要切换是使用 db2.platform 完成的,在 Linux、Unix 和 Windows 上运行时默认为 LUW。将此配置选项设置为 ZOS 会启用 z/OS。

此外,我们还添加了 cdc.control.schema 和 cdc.change.tables.schema 连接器配置属性。这些以前被硬编码为 ASNCDC,虽然这仍然是默认值,但如果您的安装使用不同的架构,现在这是可能的。

对于适用于 Linux、Unix 和 Windows 的现有 Db2 连接器,升级时无需更改配置。仅当您将这些对象放在与 ASNCDC 不同的模式中时,才需要 db2.platform 对于 z/OS 和模式属性。

2.NATS JetStream 接收器身份验证改进

Debezium Server NATS JetStream 接收器还包括在 Debezium 2.7 中支持身份验证和加密的改进。现在支持多个新的配置属性,以将密钥库详细信息传递到接收器适配器。

新的配置属性

...
debezium.sink.nats-jetstream.auth.tls.keystore=<path-to-keystore-file>
debezium.sink.nats-jetstream.auth.tls.keystore.password=secret-password
debezium.sink.nats-jetstream.auth.tls.password=<tls-password>

要开始使用新的身份验证和加密功能,只需将上述三个配置包含到您的 Debezium 服务器配置中并使用适当的值即可。

3.JDBC 接收器 MariaDB 方言支持

虽然 MariaDB 和 MySQL 通常共享许多相似的语法,但不幸的是,在某些特殊情况下,这两者略有不同,从而导致不兼容。现在 Debezium JDBC 接收器构建的 upsert 语句存在这样的不兼容性,在使用 MariaDB 目标数据库时无法执行该语句。

Debezium 2.7 正式引入了对 JDBC 接收器连接器的 MariaDB 方言支持,使用户能够配置 JDBC 接收器以将 Kafka 主题的更改写入 MariaDB 目标。一般来说,不需要特殊配置,因为 Hibernate 和 Debezium 都应该检测到目标是 MariaDB 并使用正确的方言。

如果您发现方言解析未解析为 MariaDB,您可以通过使用完全限定类名 org.hibernate.dialect.MariaDBDialect 设置连接器配置 hibernate.dialect 来强制使用它。

我们目前知道,如果您希望使用 MariaDB,该驱动程序不会作为 JDBC 接收器连接器依赖堆栈的一部分提供。这已记录在 DBZ-7818 中,并将在下一版本中修复。现在,请手动下载驱动程序并将其与 JDBC 连接器 jar 一起安装。

4.JMX 导出器添加到 Debezium 服务器

JMX Exporter 代理已作为 Debezium Server 容器映像的一部分添加。这应该使用户能够在开箱即用地运行 Debezium Server 时轻松获取连接器指标。

要启用 JMX Exporter,只需在创建基于 debezium/debezium-server:2.7 或更高版本的容器时指定 JMX_EXPORTER_PORT 环境变量,并确保容器上的外部世界可以访问代理的端口。

JMX Exporter 默认使用 config/metrics.yml 中的配置。如果此配置不够,您将需要显式挂载具有所需配置的自定义文件来覆盖容器的文件。

5.使用 Debezium Operator 启用 JMX Exporter

如果您使用 Debezium Operator 在 Kubernetes 上部署 Debezium Server,则可以通过 Operator 自定义资源直接启用 Debezium Server 中新的 JMX Exporter 功能。为了开始将导出器与运算符一起使用,添加了新的配置操作:

runtime:metrics:jmxExporter:enabled: trueconfigFrom:key1: value1key2: value2

在自定义资源中,jmxExporter.enabled 可打开或关闭导出器。此外,可以使用 jmxExporter.configFrom 部分中的键/值对提供指标配置。

6.快照和流之间的可选延迟

Debezium 2.7 附带了一个新的全局配置选项,streaming.delay.ms。这个新选项会导致连接器在开始流阶段之前执行延迟。

对于某些部署用例,您可能希望保证在流阶段开始之前至少发生一个偏移刷新间隔。在这种用例中,用户应该保证streaming.delay.ms和offset.flush.interval.ms这两个属性是对齐的。

默认情况下,Debezium 不会执行延迟并立即转换到流阶段,以与之前版本的行为保持一致。

相关文章:

Debezium日常分享系列之:Debezium 2.7.0.Beta1发布

Debezium日常分享系列之&#xff1a;Debezium 2.7.0.Beta1发布 一、重大变化1.快照工件2.Oracle 二、新功能和改进1.在 z/OS 上支持 Db22.NATS JetStream 接收器身份验证改进3.JDBC 接收器 MariaDB 方言支持4.JMX 导出器添加到 Debezium 服务器5.使用 Debezium Operator 启用 J…...

eNSP学习——RIP的水平分割和触发更新

目录 主要命令 原理概述 实验目的 实验内容 实验拓扑 实验编址 实验步骤 1、基本配置 2、搭建RIP网络 3、验证触发更新 4&#xff0e;验证水平分割 5、验证毒性逆转 需要eNSP各种配置命令的点击链接自取&#xff1a;华为&#xff45;NSP各种设备配置命令大全PDF版_…...

华为面经整理

文章目录 实习第一面准备提问相关算法相关 第一面结果提问环节 总结 实习 第一面准备 提问相关 操作系统有哪些功能 进程管理&#xff1a; 进程调度、进程同步和通信、多任务处理 内存管理&#xff1a; 内存分配、虚拟内存技术、内存保护 文件系统管理&#xff1a; 文件存储…...

数据恢复工具推荐:电脑回收站删除的文件怎么恢复?8个回收站恢复软件,收藏!

当文件从电脑的回收站被删除后&#xff0c;许多用户可能认为这些文件已永久丢失。然而&#xff0c;实际上&#xff0c;在数据被新数据覆盖之前&#xff0c;这些删除的文件仍然可以通过使用专门的数据恢复软件来恢复。本文将介绍8款顶级的文件恢复软件&#xff0c;恢复电脑回收站…...

Java 执行字符串 GroovyShell

1...

前端之npm运行时配置文件.npmrc(可用于配置npm淘宝源)

文章目录 前端之npm运行时配置文件.npmrc什么是.npmrc设置项目配置文件设置用户配置文件设置全局配置文件给npm 命令添加注册源选项 前端之npm运行时配置文件.npmrc 什么是.npmrc 官网&#xff1a;https://nodejs.cn/npm/cli/v7/configuring-npm/npmrc/ .npmrc&#xff0c;可…...

如何充分利用代理IP扩大网络接触面

目录 前言 第一部分&#xff1a;什么是代理IP&#xff1f; 第二部分&#xff1a;如何获取代理IP&#xff1f; 1. IP质量 2. 匿名性 3. 限制 第三部分&#xff1a;如何使用代理IP&#xff1f; 第四部分&#xff1a;如何充分利用代理IP&#xff1f; 总结&#xff1a; 前…...

StableDiffusion Windows本地部署

检查电脑环境 启动CMD命令窗。 如上图&#xff0c;在CMD窗口输入python命令&#xff0c;可查看本地安装的python版本信息等。输入exit()退出python命令行 执行where命令&#xff0c;可查看python安装目录。 必须安装Python3.10.x&#xff0c;因为stable-diffusion-webui的一…...

OpenCV学习(4.5) 图像的形态转换

1.目标 在本教程中&#xff1a; 我们将学习不同的形态操作&#xff0c;如腐蚀、膨胀、开、闭等。我们将看到不同的函数&#xff0c;如&#xff1a; cv.erode()**、 **cv.dilate()**、 **cv.morphologyEx() 等。 理论&#xff1a; 图像的形态转换是图像处理中的一个重要领域…...

MFC设置窗口在Z轴上的位置

函数原型&#xff1a; BOOL CWnd::SetWindowPos(const CWnd* pWndInsertAfter, int x, int y, int cx, int cy, UINT nFlags);返回值&#xff1a; 如果函数成功&#xff0c;则返回非零值&#xff1b;否则返回0。 参数&#xff1a; pWndInsertAfter&#xff1a;标识了在Z轴次…...

STM32项目分享:智能门禁锁系统

目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 2.PCB板及元器件图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片&#xff1a; 哔哩哔哩视频链接&#xff1a; https://www.bilibili.c…...

PostgreSQL中有没有类似Oracle的dba_objects系统视图

PostgreSQL中有没有类似Oracle的dba_objects系统视图 在PostgreSQL中&#xff0c;没有一个完全集成了所有对象信息的视图&#xff08;类似于Oracle中的DBA_OBJECTS&#xff09;。但是&#xff0c;PostgreSQL提供了一些系统目录表和视图&#xff0c;可以用来获取数据库对象的信…...

【kubernetes】探索k8s集群的配置资源(secret和configma)

目录 一、Secret 1.1Secret 有四种类型 1.2Pod 有 3 种方式来使用 secret 1.3应用场景&#xff1a;凭据 1.4创建 Secret 1.4.1用kubectl create secret命令创建Secret 1.4.2内容用 base64 编码&#xff0c;创建Secret 1.4.2.1Base64编码 1.4.2.2创建YAML文件 1.4.2.3…...

基于springboot实现社区养老服务系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现社区养老服务系统演示 摘要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本社区养老服务系统就是在这样的大环境下诞生&#xff0c;其可以帮助…...

用linux 1分钟部署一台文件上传/下载的http/https服务器

安装包官网&#xff1a;GitHub - codeskyblue/gohttpserver: The best HTTP Static File Server, write with golangvue 1、官网下载或本文章的资源链接下载gohttpserver&#xff1b; 2、将gohttpserver、cacert.pem、cakey.pem三个文件放在linux一个目录下 启动gohttpserver服…...

机器学习ML.NET

适用于 .NET 的机器学习 ML.NET 是用于 .NET 的跨平台开源机器学习 (ML) 框架。 ML.NET 允许开发人员在其 .NET 应用程序中轻松构建、训练、部署和使用自定义模型,而无需开发机器学习模型的专业知识或使用 Python 或 R 等其他编程语言的经验。该框架提供从文件和数据库加载…...

爬取基金收盘价并用pyecharts进行展现

爬取基金收盘价并用pyecharts进行展现 一、用到的第三方包 因为使用到了一些第三方的包&#xff0c;包还是比较大的如果直接从社区下载比较费劲&#xff0c;所以建议配置国内镜像源&#xff0c;这里以清华的镜像源为例。 pip config set global.index-url https://pypi.tuna…...

各平台对象存储

一、阿里云对象存储 官方文档&#xff1a;https://help.aliyun.com/zh/oss/getting-started/getting-started-with-oss?spma2c4g.11186623.0.0.299a646c6nWWcW 1.引入maven 官网&#xff1a;https://help.aliyun.com/zh/oss/developer-reference/java-installation?spma2c…...

C# 中提取方法进行重构

文章目录 1、什么是提取方法重构技术&#xff1f;2、提取方法重构 C# 代码示例3、提取方法重构技术的好处4、提取方法重构有用的场景5、总结 C# 中的提取方法重构技术 1、什么是提取方法重构技术&#xff1f; 重构代码是软件工程师的一项重要技能&#xff0c;因为它有助于提高…...

每天一个数据分析题(三百四十三)

同环比是帮助阅读者了解维度项表现水平有没有随着时间的推移而得以增长提升&#xff0c;以下对于同环比的说法正确的是&#xff1f; A. 同环比计算方法一般适用于对长周期业务行为结果的观测 B. 若产品具备季节属性特征&#xff0c;则应优先使用同比计算方法 C. 上期值一般指…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言&#xff1a; 在Java编程中&#xff0c;类的生命周期是指类从被加载到内存中开始&#xff0c;到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期&#xff0c;让读者对此有深刻印象。 目录 ​…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

windows系统MySQL安装文档

概览&#xff1a;本文讨论了MySQL的安装、使用过程中涉及的解压、配置、初始化、注册服务、启动、修改密码、登录、退出以及卸载等相关内容&#xff0c;为学习者提供全面的操作指导。关键要点包括&#xff1a; 解压 &#xff1a;下载完成后解压压缩包&#xff0c;得到MySQL 8.…...

Linux中《基础IO》详细介绍

目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改&#xff0c;实现简单cat命令 输出信息到显示器&#xff0c;你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...