2

提供了一个用例:

流处理架构;事件进入 Kafka,然后由具有 MongoDB 接收器的作业处理。

数据库名称:myWebsite 集合:users

user并且作业在users集合中下沉记录。

  1. 所以 Debezium 将监视users集合的变化,并且在每次变化时,都会在 Kafka 中产生有关该主题的事件dbserver1.myWebsite.users?假设dbserver1是连接器的名称。
  2. 如果是这样,那么我可以有一个 Kafka 消费者来消费dbserver1.myWebsite.users主题并对这些事件做出反应?
  3. 据我了解,Debezium 产生的事件也包含数据库记录的值?如果它的变化包含旧/新值?如果创建了一个数据库记录,旧的是否为空?

到目前为止,我想对我的理解进行某种确认。谢谢!

4

1 回答 1

4

答案很简单

  1. 是的
  2. 是的,它可以是任意的 kafka 消费者或 Kafka 流,或者您可以使用 KSQL 查询它
  3. 是的,Debezium 记录由(不仅)旧值 ( before) 和新 ( after) 值组成。在INSERTonlyafter的情况下,如果UPDATE两者都存在before并且after都存在(Postgres 需要对其进行特殊设置)并且在DELETEonly的情况下before存在。
于 2017-09-08T15:30:23.653 回答