Debezium日常分享系列之:Debezium 信号发送和通知 - 第 1 部分

这篇具有很好参考价值的文章主要介绍了Debezium日常分享系列之:Debezium 信号发送和通知 - 第 1 部分。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、背景

本系列文章将介绍 Debezium 提供的信号和通知功能,并讨论与平台交互的可用渠道。在本系列的后续部分中,我们将更深入地研究自定义信令通道并探索其他主题,例如 JMX 信令和通知。

在当今互连的软件应用程序和系统中,与其他产品无缝集成对于构建强大而高效的解决方案至关重要。构建集成软件生态系统的关键挑战之一是在不同组件和服务之间建立有效的通信渠道。

Debezium 引入了全面的信号和通知系统,可与任何第三方解决方案无缝集成。结合信号和通知系统,您现在可以编排复杂而高效的管道,以随时了解 Debezium 管理的状态的状态和进度。

新的信号系统经过重新设计,具有可扩展性,提供了一种简化的方法,可以在各种可用的实现之上添加新的自定义信号通道。让我们探索不同的信号和通知渠道,涵盖它们的功能并描述它们的好处。

二、Debezium 中的信号发送

Debezium 中的信号发送是指用户可以触发产品内特定操作的机制。它允许用户与 Debezium 交互并控制某些行为。信令的一个值得注意的用例是执行增量快照,它允许启动数据库的临时快照。

Debezium 提供了不同的信号通道,用户可以通过这些通道向平台发送信号。让我们探索一下可用的信号通道:

通过数据库表发出信号

  • 在 Debezium 的早期版本中,信号发送需要一个专用的数据库表,您可以在其中插入特定记录以触发 Debezium 执行任务。例如,插入的行可以启动增量快照,提示连接器根据给定的信号标准运行快照操作。

通过 Kafka 主题发送信号:

  • 在 Debezium 的早期版本中,您可以通过配置的 Kafka 主题发送信号;然而,这仅适用于使用只读访问和全局事务标识符(GTID)行为的 MySQL。在 Debezium 2.3 中,Kafka 信号通道可供所有连接器使用。
  • 此增强功能为所有支持的 Debezium 数据库中的信号提供了简化的集成方法和统一一致的方法。您可以向特定的 Kafka 主题发送信号,Debezium 将使用和处理该信号,就像它源自信号表本身一样。
  • 使用 Kafka 主题作为信号有几个优点。首先,它与事件驱动设计保持一致,使其与变更数据捕获和 Debezium 自然契合。此外,它还提供了一种向 Debezium 发送信号的安全方式,而无需为用户提供对底层数据库的直接访问。

即使使用 Kafka 信号方法,增量快照功能仍然需要存在并使用信令表来管理增量快照过程所需的一些簿记。仅当以只读方式使用 MySQL 并启用全局事务标识符 (GTID) 时,才能省略信号表。

通过文件发信号:

  • 您可以从文件系统触发信号。当不依赖 Kafka 等消息传递基础设施与 Debezium Server 或嵌入式引擎相结合时,或者当您无法使用数据库作为信号时,这种方法是一个很好的替代方案。

通过 Java 管理扩展 (JMX) 发出信号:

  • 使用此通道,您可以发送信号,调用通过专用 MBean 公开的信号操作。您可以通过使用您的首选客户端连接到 MBeanServer 来完成此操作。

通过自定义通道发送信号:

  • 我们还重新设计了可扩展的信号机制。您可以提供您的实现并通过配置使用它。随后将有一篇关于此功能的专门文章。

三、Debezium 中的通知

通知侧重于检索有关 Debezium 及其内部流程的状态和进度信息。它提供了对任务执行和完成情况的洞察,例如初始快照或增量快照。 Debezium 会生成通知,让用户了解这些任务的进度,从而促进基于实时信息的监控和决策。通过利用通知功能,用户可以跟踪 Debezium 的状态并根据收到的通知采取适当的操作。

Debezium 提供了多种获取通知的方式。让我们探索一下现成的渠道:

通过Sink通道通知:

  • 此实现通过 Connect API 将通知发送到配置的主题。用户可以启用该频道并指定主题名称。
  • 通过向指定主题发布通知,Debezium 允许用户以适合自己需求的方式使用和处理通知。
  • 由于 Sink 是不可知的(即不一定是 Kafka),因此它与 Debezium Server 无缝集成,以将通知传递到其任何接收器适配器。

通过日志通知:

  • 此通道将通知直接附加到连接器日志的末尾。这种方法为监视、调试和分析通知详细信息提供了方便的访问。

通过 Java 管理扩展 (JMX) 发出通知:

  • 此通知通道公开一个专用 Debezium MBean,该 MBean 具有多个包含生成的通知列表的属性。该通道结合了常见的行业标准监控技术(例如 JMX)来响应和使用 Debezium 通知。

通过自定义渠道通知:文章来源地址https://www.toymoban.com/news/detail-560529.html

  • Debezium 的通知机制是可扩展的,允许用户实现自定义渠道,以使用最适合其需求的方式传递通知。我们将在专门的帖子中介绍如何提供自定义通知渠道。

四、结论

  • 信号和通知现在是 Debezium 的基本功能。信号使用户能够与 Debezium 交互并触发操作,而通知则提供有关 Debezium 状态和进度的宝贵信息。
  • 在 Debezium 的早期版本中,只能使用信令表来启动增量快照。用户必须配置特定的表作为信号机制来触发增量快照。然而,对于启用了 GTID 的 MySQL,可以利用 Kafka 来发送信号。
  • 随着 Debezium 2.3 版本的发布,我们对信号和通知子系统进行了重大改进。我们统一了连接器之间的多种行为,并使整个系统可扩展,旨在简化自定义和未来贡献的实现。我们希望这能够增强使用 Debezium 的整体体验,并提供一种将 Debezium 与其他第三方应用程序和工具无缝集成的方法。这些新的和改进的功能使您能够以无限的方式最大限度地发挥 Debezium 变更数据捕获平台的功能。

到了这里,关于Debezium日常分享系列之:Debezium 信号发送和通知 - 第 1 部分的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Debezium日常分享系列之:流式传输 Cassandra

    选择Cassandra 这个 NoSQL 数据库,主要是因为它的高可用性、水平可扩展性以及处理高写入吞吐量的能力。 将 Cassandra 引入我们的基础设施后,我们的下一个挑战是找到一种方法将 Cassandra 中的数据公开给我们的数据仓库 BigQuery,以进行分析和报告。我们快速构建了一个 Airflow

    2024年02月13日
    浏览(46)
  • Debezium日常分享系列之:使用 Debezium 连接器实现密钥外部化

    隐藏数据库的账号和密码 当 Debezium 连接器部署到 Kafka Connect 实例时,有时需要对 Connect API 的其他用户隐藏数据库凭据。 让我们回顾一下 MySQL Debezium connector的连接器注册请求: 用户名和密码以纯字符串形式传递给 API。更糟糕的是,任何有权访问 Kafka Connect 集群及其 REST AP

    2024年02月16日
    浏览(42)
  • Debezium日常分享系列之:流式传输Cassandra第二部分

    在本博客文章系列的前半部分中,解释了Cassandra 设计流数据管道的决策过程。在这篇文章中,我们将把管道分为三个部分,并更详细地讨论每个部分: Cassandra 到 Kafka 与 CDC 代理 Kafka 与 BigQuery 和 KCBQ 使用 BigQuery 视图进行转换 相关技术博客: Debezium日常分享系列之:流式传输

    2024年02月16日
    浏览(44)
  • 【JavaSE专栏82】线程中断,发送一个中断信号给另一个线程,让它中断当前的执行

    作者主页 :Designer 小郑 作者简介 :3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN学院、蓝桥云课认证讲师。 主打方向 :Vue、SpringBoot、微信小程序 本文讲解了 Java 中线程中断的语法和应用场景,并给出了样例代码。线程中断指的是

    2024年02月10日
    浏览(36)
  • TPS54331DDAR降压芯片详解,一位电子大学生的日常分享(莱洛三角形的DC-DC降压部分)

    目录 一.   芯片特性 二:引脚定义 三:经典电路  四:参数调整  1.3.5 ~ 28v输入电压范围 2.可调输出电压低至0.8 V 3.MOSFET支持3-A连续输出 4.固定570 kHz开关频率 5.典型的1- A关机静态电流 6.可调节慢启动限制涌流电流可编程的UVLO阈值 7.过电压暂态保护 BOOT: 在BOOT和PH引脚之间需

    2024年02月05日
    浏览(91)
  • Debezium系列之:监控 Debezium

    Debezium JMX相关的技术博客: Debezium系列之:安装jmx导出器监控debezium指标 Debezium系列之:为Debezium集群JMX页面增加监控,JMX页面出现异常时发送飞书告警,确保任务能够获取debezium集群指标 Debezium系列之:深入解读Debezium重要的jmx指标 Debezium系列之:mysql JMX metrics指标详细解读

    2024年02月11日
    浏览(50)
  • Debezium系列之:在 Kubernetes 上部署 Debezium

    K8s相关知识可以阅读博主以下几篇技术博客: K8s系列之:搭建高可用K8s v1.23.5集群详细步骤,3个master节点,3个Node节点 K8s系列之:Pod的基本用法 k8s系列之:kubectl子命令详解一 k8s系列之:kubectl子命令详解二 更多K8s知识点详见博主K8s系列文章 更多Debezium内容请阅读博主Debezi

    2024年02月11日
    浏览(61)
  • Debezium系列之:使用 Strimzi 将 Kafka 和 Debezium 迁移到 Kubernetes

    在本文中,将探讨在生产中实现debezium与K8s的结合: 在 Kubernetes 集群中安装和管理 Apache Kafka 集群。 在 Kubernetes 集群中部署 Debezium Kafka Connect。 Kubernetes 是一个开源容器编排器,本文使用 minikube 作为 Kubernetes 集群,但相同的步骤在任何其他实现中都应该有效。 启动集群 在终

    2024年02月15日
    浏览(45)
  • Debezium系列之:记录变更事件

    Debezium 数据更改事件具有复杂的结构,可提供丰富的信息。 但是,在某些情况下,在下游消费者可以处理 Debezium 更改事件消息之前,它需要有关原始数据库更改导致的字段级更改的其他信息。 为了使用有关数据库操作如何修改源数据库中的字段的详细信息来增强事件消息,

    2024年02月09日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包