Java 实现一个简单的复制工具

Java 实现一个简单的复制工具,java,spring-integration,replication,jmx,database-replication,Java,Spring Integration,Replication,Jmx,Database Replication,我们的团队正在进行一个项目,该项目旨在通过DMZ定期在oracle数据库之间传输数据,由于某些原因,我们不允许使用DBMS解决方案在数据库之间进行数据复制。我们必须通过Java技术开发一个简单的复制工具及其监控系统,以适合我们的场景。我已经看过很多我认为可以在这个项目中帮助我们的东西,比如Spring集成、Spring批处理、Web服务、JMS和消息队列、JMX。。。但我找不到一个线索,我应该从哪里开始。 请指导我可以遵循的最佳选项和最佳实践。您有两个选项: 使用一些CDC(更改数据捕获)解


我们的团队正在进行一个项目,该项目旨在通过DMZ定期在oracle数据库之间传输数据,由于某些原因,我们不允许使用DBMS解决方案在数据库之间进行数据复制。我们必须通过Java技术开发一个简单的复制工具及其监控系统,以适合我们的场景。我已经看过很多我认为可以在这个项目中帮助我们的东西,比如Spring集成、Spring批处理、Web服务、JMS和消息队列、JMX。。。但我找不到一个线索,我应该从哪里开始。

请指导我可以遵循的最佳选项和最佳实践。

您有两个选项:

  • 使用一些CDC(更改数据捕获)解决方案,分析数据库中的更改(重做日志)并将更改应用到目标系统,如Oracle GoldenGate、Streams、SAP Replication Server、Attunity等

  • 使用ETL工具,定期在源中生成SELECT语句,并将整个数据集复制到目标

  • 您有两个选择:

  • 使用一些CDC(更改数据捕获)解决方案,分析数据库中的更改(重做日志)并将更改应用到目标系统,如Oracle GoldenGate、Streams、SAP Replication Server、Attunity等

  • 使用ETL工具,定期在源中生成SELECT语句,并将整个数据集复制到目标


  • 非常感谢,还有两个问题,第一个问题:SymmetricDS是正确的工具吗?问题二:从头开始开发一个简单的ETL工具是一个疯狂的想法吗?我不知道这个工具。你必须制作一个POC并测试它是否可以接受。感谢Adam的指导:)Reza,我在JumpMind工作,该公司分发SymmetricD,它可以用于你的用例,它基于Adam上面提到的CDC。它确实使用触发器来捕获更改,而不是基于日志的复制。如果您想研究更具计划性的方法而不是接近实时的方法,我们也有一个ETL工具(METL)。如果您有兴趣深入了解,我们会提供试用版和POC版本。非常感谢,还有两个问题,第一个问题:SymmetricDS是正确的工具吗?问题二:从头开始开发一个简单的ETL工具是一个疯狂的想法吗?我不知道这个工具。你必须制作一个POC并测试它是否可以接受。感谢Adam的指导:)Reza,我在JumpMind工作,该公司分发SymmetricD,它可以用于你的用例,它基于Adam上面提到的CDC。它确实使用触发器来捕获更改,而不是基于日志的复制。如果您想研究更具计划性的方法而不是接近实时的方法,我们也有一个ETL工具(METL)。如果您有兴趣深入了解,我们会提供试用版和POC版本。