【问题标题】:Is it possible to use Kafka Connect to mirror an RDBMS table to a Kafka Stream?是否可以使用 Kafka Connect 将 RDBMS 表镜像到 Kafka Stream?
【发布时间】:2019-06-23 12:39:31
【问题描述】:

我知道可以使用 Kafka Connect 将更新从数据库推送到 Kafka 流。我的问题是,我可以创建一个消费者来将同一流中的更改写回表中而不创建无限循环吗?

我假设如果我创建一个将更新写入数据库表的使用者,它将触发 Connect 将该更新推送到流等。有没有办法解决这个问题,以便我可以将数据库表镜像到流?

【问题讨论】:

    标签: apache-kafka apache-kafka-connect


    【解决方案1】:

    您可以使用 Kafka Connect 的 JDBC Sink connector 从 Kafka 主题流式传输到数据库。

    您需要在业务逻辑中编写代码,以避免无限复制循环进入连接器或您的消费者。例如:

    • JDBC 源连接器使用WHERE 子句仅拉取设置了标志以指示它们是原始记录的记录
    • 源连接器中的自定义单消息转换以删除设置了标志以指示它们不是原始记录的记录
    • 流应用程序(例如 KSQL / Kafka Streams)处理所有数据库更改的入站流,以仅过滤掉那些设置了标志以指示它们是原始记录的更改
      • 效率低下,因为那时您仍在流式传输数据库中的所有内容

    【讨论】:

      【解决方案2】:

      是的。可以配置同步/复制。

      【讨论】:

      • 谢谢,我不确定术语。是否有一些我可以阅读的文档以提供更多信息?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-04-30
      • 2021-08-06
      • 2020-10-08
      • 2021-12-25
      • 2021-10-13
      • 2020-06-19
      • 2020-03-28
      相关资源
      最近更新 更多