gpt4 book ai didi

java - 如何在 Java 中将表的增量从数据库读取到 Kafka Producer?

转载 作者:行者123 更新时间:2023-11-29 04:23:42 28 4
gpt4 key购买 nike

我正在尝试在我的 Java 代码中使用数据库数据作为我的 Kafka 生产者。源数据不断增长(比如每秒 20 行)。每次将新记录插入数据库表时,都会从数据库中读取整个数据并将其添加到 Kafka 主题中。我只希望将新附加的行发送到主题(即,如果表已经包含 10 行并且再附加 4 行,则只需要将这 4 行发送到主题)。

如果我们也可以使用 Kafka API,有没有办法在 java 中实现这一点?

最佳答案

更简单的方法是使用 change-data-capture 将数据库中的更改提供给 Kafka 主题。尝试自己构建它是在重新发明一个已经完善的轮子;-)

您的源数据库是什么?对于专有 RDBMS(Oracle、DB2、MS SQL 等),您可以使用 GoldenGate、Attunity、DBVisit 等商业工具。对于开源 RDBMS(例如 MySQL、PostgreSQL),您应该查看开源 Debezium工具。所有这些 CDC 工具都直接与 Kafka 集成。

根据您的用例、规模等,您还有另一个选择,就是使用 JDBC Kafka Connect connector 从数据库中提取更改的行。 .这不像 CDC 那样灵活或可扩展,但仍然有用且比尝试自己轮询数据库更容易。

关于java - 如何在 Java 中将表的增量从数据库读取到 Kafka Producer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47571324/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com