如何将oracle表数据加载到kafka主题中?

xlpyo6sf  于 2021-06-07  发布在  Kafka
关注(0)|答案(7)|浏览(561)

如何将oracle表数据加载到kafka主题中?我做了一些研究,了解到,我应该使用cdc工具,但所有的cdc工具都是付费版本,有人能建议我如何实现这一点吗?

fcy6dtqo

fcy6dtqo1#

将数据从oracle表加载到kafka主题中不需要变更数据捕获(cdc)工具。
您可以使用kafka confluent的jdbc源连接器来加载数据。
但是,如果需要捕获删除和更新,则必须使用需要支付许可证的cdc工具。confluent认证了以下cdc工具(源连接器):
一致性
数据库访问
斯特里姆
甲骨文

7tofc5zh

7tofc5zh2#

您会发现这篇文章很有用:不再是筒仓:如何将数据库与apachekafka和cdc集成
它详细介绍了您的所有选项和当前可用的工具。简而言之,您可以使用kafka connect jdbc连接器进行批量(或基于查询的cdc),也可以将基于日志的cdc方法与支持oracle作为源的cdc工具之一结合使用,包括attunity、goldengate、sq data和ibm的iidr。
您通常会发现,如果您已经为数据库(如oracle、db2等)付费,那么您将不得不为基于日志的cdc工具付费。开源cdc工具可用于开源数据库。例如,debezium是开源的,可以很好地与mongodb、mysql和postgresql配合使用。

fruv7luv

fruv7luv3#

您可能对openlogreplicator感兴趣。它是一个完全用c++编写的开源gpl许可工具。它读取oracle重做日志的二进制格式并将其发送给kafka。
它是非常快的-您可以实现低延迟无需太多的努力,因为它完全在内存中运行。它支持自11.2.0.1以来的所有oracle数据库版本,不需要额外的许可。
它可以在数据库主机上工作,但您也可以将其配置为使用sshfs从另一个主机读取重做日志—数据库负载最小。
免责声明:我是这个解决方案的作者

g6ll5ycj

g6ll5ycj4#

您可能对debezium项目感兴趣,它为各种数据库提供了开源cdc连接器。除此之外,我们还为oracledb提供了一个。请注意,此连接器当前基于oracle的xstream api,它本身需要一个单独的许可证,但我们希望很快添加一个完全免费的替代方案。
免责声明:我是debezium的领导

83qze16e

83qze16e5#

请参考kafka jdbc源连接器。下面是链接https://docs.confluent.io/current/connect/connect-jdbc/docs/index.html

oxalkeyp

oxalkeyp6#

oracle数据库有一个基于logminer的自定义kafka源连接器,如下所示:
https://github.com/erdemcer/kafka-connect-oracle
这个项目正在开发中。

jogvjijk

jogvjijk7#

正如其他人提到的,cdc需要付费产品。如果你只是想尝试一下,斯特里姆是免费提供的头30天。
https://www.striim.com/instant-download/
包括jdbc在内的“免费”选项。但是如果您真的想使用触发器来捕获更改,那么您的数据库将会有很大的负载。
免责声明:我在斯特里姆工作

相关问题