Debezium架构

Debezium架构

最常见的是,Debezium是通过Apache Kafka Connect部署的。Kafka Connect是用于实现和操作的框架和运行时

  • 源连接器(例如Debezium)将数据导入Kafka和

  • 接收器连接器,可将数据从Kafka主题传播到其他系统。

下图显示了基于Debezium的CDC管道的体系结构:
在这里插入图片描述
除了Kafka代理本身以外,Kafka Connect还作为一项单独的服务运行。部署了用于MySQL和Postgres的Debezium连接器以捕获这两个数据库中的更改。为此,两个连接器使用客户端库建立到两个源数据库的连接,以在MySQL中访问二进制日志,在Postgres中从逻辑复制流中读取。

默认情况下,来自一个捕获表的更改将写入到相应的Kafka主题。如果需要,可以在Debezium的主题路由SMT的帮助下调整主题名称,例如,使用与捕获的表名称不同的主题名称,或将多个表中的更改流到单个主题中。

一旦更改事件出现在Apache Kafka中,就可以使用来自Kafka Connect生态系统的不同连接器将更改流式传输到其他系统和数据库,例如Elasticsearch,数据仓库和分析系统或缓存(例如Infinispan)。根据所选接收器连接器的不同,可能需要应用Debezium的新记录状态提取 SMT,该SMT仅将“后”结构从Debezium的事件包络传播到接收器连接器。

嵌入式引擎

使用Debezium连接器的另一种方法是嵌入式引擎。在这种情况下,Debezium不会通过Kafka Connect运行,而是作为嵌入到自定义Java应用程序中的库运行。这对于在应用程序内部使用变更事件而不需要部署完整的Kafka和Kafka Connect集群,或将变更流式传输到其他消息传递代理(例如Amazon Kinesis)都非常有用。你可以找到一个例子在实例库中的后者。

原文

https://debezium.io/documentation/reference/1.0/architecture.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值