Kafka Connect:2 个数据库之间的双向复制

问题描述 投票:0回答:1

我的团队需要在 2 个(甚至更多,但现在我们还是使用 2 个)数据库(PostgreSQL 免费版)之间实现某种复制。我们决定尝试使用 Debezium PostgreSQL 源连接器和 JDBC 接收器连接器来连接 Kafka。这是示例配置方案:

我们希望双方都做出改变。存在问题:当数据从 Postgres-1 流到 Postgres-2 并且 Postgres-2 应用更改时,Source Connector-2 接收这些更改并将它们流回 Postgres-1。 Postgres-1 无法应用这些更改,因为它已经具有带主键的这些记录。然后,如果我理解正确的话,尽管没有应用于 Postgres-1,更改仍然会写入 Postgres-1 的 WAL 并通过 pgoutput Postgres 插件提供给 Source Connector-1。我们得到了无法应用的无限循环的更改。

问题:

  1. 有没有办法使用 Kafka Connect 实现这种复制,或者这只是技术的错误使用?
  2. 有什么方法可以将标志放入 Sink Connector 并将这些标志传递给 Postgres,并以某种方式使 Postgres 将带有标志的更改发送到 Source Connector 进行过滤?
postgresql apache-kafka apache-kafka-connect debezium
1个回答
0
投票

您是否找到解决无限循环变化的方法?或者是否有其他解决方案适用于此。

© www.soinside.com 2019 - 2024. All rights reserved.