【发布时间】:2019-06-23 14:16:47
【问题描述】:
我正在做一个工作项目。我很好奇是否可以在没有 CDC 的数据库上实现 Kafka。 (CDC 并不是一直打开的) 在网上找不到任何讨论其他选项的资源。是否可以将数据直接输入kafka?比如写C#代码来读取数据库,然后插入作为连接器的Kafka?
【问题讨论】:
标签: database apache-kafka apache-kafka-connect cdc
我正在做一个工作项目。我很好奇是否可以在没有 CDC 的数据库上实现 Kafka。 (CDC 并不是一直打开的) 在网上找不到任何讨论其他选项的资源。是否可以将数据直接输入kafka?比如写C#代码来读取数据库,然后插入作为连接器的Kafka?
【问题讨论】:
标签: database apache-kafka apache-kafka-connect cdc
看看这个,它解释了一切:-)
https://www.confluent.io/kafka-summit-ny19/no-more-silos-integrating-db-into-apache-kafka
tl;dr:你可以写一些代码,但问题是真的应该你写一些代码:) 几乎肯定不会。您可以使用“适当的”CDC 从事务日志中获取事件,或者您可以使用带有 JDBC 源连接器的“基于查询的 CDC”来轮询新记录。在上面的谈话中讨论了每种方法的优缺点。
【讨论】:
可以,但不应该。将 CDC 视为另一个软件,当然,您可以编写类似的软件。您需要处理许多棘手的事情:
这背后有很多原因,这是唯一的理论上的解决方案。这是一个great blog 来自一个在分布式数据库方面非常有经验的人,他讨论了将自定义 CDC 写入 Postgres 或任何一般的数据库供应商。
【讨论】: