从JDBC Kafka Connect Source中删除事件

时间:2017-07-11 21:19:18

标签: apache-kafka-connect

我正在使用Kafka Connect JDBC连接器,并专门查看放在该主题上的数据的实际格式是什么。

我已经能够看到数据库的新插入和更新,但我无法检测到数据库中的删除。

首先:JDBC源是否支持检测这些更改?我无法找到这样或那样的文档。

如果是,它对实际主题采用什么格式?

1 个答案:

答案 0 :(得分:11)

Confluent JDBC source connector能够捕获"软删除",其中"已删除"您的应用程序只是简单地标记了行,但实际上并没有从表中删除这些行。由于行仍然存在,连接器可以看到它们的更改。但是,连接器能够捕获从表中删除的行,因为连接器通过JDBC查询源表,因此无法查看从表中删除的行。

其他连接器可以使用称为更改数据捕获或CDC 的技术,通过访问数据库事务日志或预写日志来捕获所有更改。每个DBMS都不同,因此需要专门为该DBMS编写的连接器。例如,Debezium project具有适用于MySQL,PostgreSQL和MongoDB的Kafka Connect连接器,并且正在开发用于Oracle和SQL Server的连接器。