了解Debezium

时间:2017-09-07 13:11:18

标签: debezium

提供了一个用例:

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

数据库名称:myWebsite 收集:users

该作业会在user集合中汇总users条记录。

  1. 因此Debezium将监视users集合中的变化,并且在每次更改时,都会在主题dbserver1.myWebsite.users上向Kafka发送事件?假设dbserver1是连接器的名称。
  2. 如果是这样,那么我可以让一个Kafka消费者使用dbserver1.myWebsite.users话题并对这些事件作出反应吗?
  3. 根据我的理解,Debezium生成的事件还包含数据库记录的值?如果它的更改包含旧/新值?如果创建了db记录,则old为null?
  4. 到目前为止,我想对我的理解进行某种确认。 谢谢!

1 个答案:

答案 0 :(得分:3)

答案很简单

  1. 是的,它可以是任意kafka消费者或Kafka流,也可以用KSQL查询
  2. 是的,Debezium记录由(不仅)旧值(before)和新值(after)组成。如果INSERT只有after UPDATEbeforeafter都存在DELETE,则before只有{{1}}(Postgres需要特殊设置)只有{{1}}存在{{1}}。