搜索

第 1 章 Debezium 的高级别概述

download PDF

Debezium 是一组分布式服务,用于捕获数据库中的更改。您的应用程序可以使用并响应这些更改。Debezium 会在更改事件记录中的每个数据库表中捕获每行级别的更改,并将这些记录流传输到 Kafka 主题。应用程序读取这些流,其以与生成的顺序提供更改事件记录。

更多详情位于以下部分中:

1.1. Debezium 功能

Debezium 是 Apache Kafka Connect 的一组源连接器。每个连接器都通过使用数据库功能更改数据捕获(CDC),从而从不同的数据库间更改。与其他方法(如轮询或双写)不同,基于日志的 CDC 由 Debezium 实施:

  • 确保 捕获所有数据更改。
  • 生成具有 非常低延迟的 更改事件,同时避免增加频繁轮询所需的 CPU 使用量。例如,对于 MySQL 或 PostgreSQL,延迟时间为 millisecond 范围内。
  • 不需要对数据模型的更改,如"Last Updated"列。
  • 可以捕获 删除
  • 可以捕获旧的记录状态和其他元数据,如事务 ID 并导致查询,具体取决于数据库的功能和配置。

基于日志更改数据捕获的五个优点 是一个博客文章,它提供了更详细的信息。

Debezium 连接器使用各种相关功能和选项捕获数据更改:

  • 快照: (可选)如果连接器启动,且并非所有日志仍然存在,则可以进行数据库当前状态的初始快照。通常,当数据库有一段时间运行时,会出现这种情况,并丢弃事务日志,不再需要事务恢复或复制。执行快照有不同的模式,包括支持 增量 快照,可以在连接器运行时触发。如需了解更多详细信息,请参阅您使用的连接器的文档。
  • filters 您可以使用 include/exclude 列表过滤器配置捕获的模式、表和列的集合。
  • masking : 可以屏蔽特定列中的值,例如,当它们包含敏感数据时。
  • 监控: 大多数连接器都可使用 JMX 监控。
  • 随时可用的 单个消息转换(SMT) 用于消息路由、过滤、事件扁平化等等。有关 Debezium 提供的 SMT 的更多信息,请参阅 应用转换来修改使用 Apache Kafka 交换的消息

每个连接器的文档提供了有关连接器功能和配置选项的详细信息。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.