如何将oracle表数据加载到kafka主题中?我做了一些研究,了解到,我应该使用cdc工具,但所有的cdc工具都是付费版本,有人能建议我如何实现这一点吗?
fcy6dtqo1#
将数据从oracle表加载到kafka主题中不需要变更数据捕获(cdc)工具。您可以使用kafka confluent的jdbc源连接器来加载数据。但是,如果需要捕获删除和更新,则必须使用需要支付许可证的cdc工具。confluent认证了以下cdc工具(源连接器):一致性数据库访问斯特里姆甲骨文
7tofc5zh2#
您会发现这篇文章很有用:不再是筒仓:如何将数据库与apachekafka和cdc集成它详细介绍了您的所有选项和当前可用的工具。简而言之,您可以使用kafka connect jdbc连接器进行批量(或基于查询的cdc),也可以将基于日志的cdc方法与支持oracle作为源的cdc工具之一结合使用,包括attunity、goldengate、sq data和ibm的iidr。您通常会发现,如果您已经为数据库(如oracle、db2等)付费,那么您将不得不为基于日志的cdc工具付费。开源cdc工具可用于开源数据库。例如,debezium是开源的,可以很好地与mongodb、mysql和postgresql配合使用。
fruv7luv3#
您可能对openlogreplicator感兴趣。它是一个完全用c++编写的开源gpl许可工具。它读取oracle重做日志的二进制格式并将其发送给kafka。它是非常快的-您可以实现低延迟无需太多的努力,因为它完全在内存中运行。它支持自11.2.0.1以来的所有oracle数据库版本,不需要额外的许可。它可以在数据库主机上工作,但您也可以将其配置为使用sshfs从另一个主机读取重做日志—数据库负载最小。免责声明:我是这个解决方案的作者
g6ll5ycj4#
您可能对debezium项目感兴趣,它为各种数据库提供了开源cdc连接器。除此之外,我们还为oracledb提供了一个。请注意,此连接器当前基于oracle的xstream api,它本身需要一个单独的许可证,但我们希望很快添加一个完全免费的替代方案。免责声明:我是debezium的领导
83qze16e5#
请参考kafka jdbc源连接器。下面是链接https://docs.confluent.io/current/connect/connect-jdbc/docs/index.html
oxalkeyp6#
oracle数据库有一个基于logminer的自定义kafka源连接器,如下所示:https://github.com/erdemcer/kafka-connect-oracle这个项目正在开发中。
jogvjijk7#
正如其他人提到的,cdc需要付费产品。如果你只是想尝试一下,斯特里姆是免费提供的头30天。https://www.striim.com/instant-download/包括jdbc在内的“免费”选项。但是如果您真的想使用触发器来捕获更改,那么您的数据库将会有很大的负载。免责声明:我在斯特里姆工作
7条答案
按热度按时间fcy6dtqo1#
将数据从oracle表加载到kafka主题中不需要变更数据捕获(cdc)工具。
您可以使用kafka confluent的jdbc源连接器来加载数据。
但是,如果需要捕获删除和更新,则必须使用需要支付许可证的cdc工具。confluent认证了以下cdc工具(源连接器):
一致性
数据库访问
斯特里姆
甲骨文
7tofc5zh2#
您会发现这篇文章很有用:不再是筒仓:如何将数据库与apachekafka和cdc集成
它详细介绍了您的所有选项和当前可用的工具。简而言之,您可以使用kafka connect jdbc连接器进行批量(或基于查询的cdc),也可以将基于日志的cdc方法与支持oracle作为源的cdc工具之一结合使用,包括attunity、goldengate、sq data和ibm的iidr。
您通常会发现,如果您已经为数据库(如oracle、db2等)付费,那么您将不得不为基于日志的cdc工具付费。开源cdc工具可用于开源数据库。例如,debezium是开源的,可以很好地与mongodb、mysql和postgresql配合使用。
fruv7luv3#
您可能对openlogreplicator感兴趣。它是一个完全用c++编写的开源gpl许可工具。它读取oracle重做日志的二进制格式并将其发送给kafka。
它是非常快的-您可以实现低延迟无需太多的努力,因为它完全在内存中运行。它支持自11.2.0.1以来的所有oracle数据库版本,不需要额外的许可。
它可以在数据库主机上工作,但您也可以将其配置为使用sshfs从另一个主机读取重做日志—数据库负载最小。
免责声明:我是这个解决方案的作者
g6ll5ycj4#
您可能对debezium项目感兴趣,它为各种数据库提供了开源cdc连接器。除此之外,我们还为oracledb提供了一个。请注意,此连接器当前基于oracle的xstream api,它本身需要一个单独的许可证,但我们希望很快添加一个完全免费的替代方案。
免责声明:我是debezium的领导
83qze16e5#
请参考kafka jdbc源连接器。下面是链接https://docs.confluent.io/current/connect/connect-jdbc/docs/index.html
oxalkeyp6#
oracle数据库有一个基于logminer的自定义kafka源连接器,如下所示:
https://github.com/erdemcer/kafka-connect-oracle
这个项目正在开发中。
jogvjijk7#
正如其他人提到的,cdc需要付费产品。如果你只是想尝试一下,斯特里姆是免费提供的头30天。
https://www.striim.com/instant-download/
包括jdbc在内的“免费”选项。但是如果您真的想使用触发器来捕获更改,那么您的数据库将会有很大的负载。
免责声明:我在斯特里姆工作