我正在努力为我的问题找到解决方案。问题陈述
我知道ETL过程真的会让工作变得简单但是我们没有ETL工具所以试图找到使用Java的解决方案。任何可以帮助我们的建议都非常感激。
先谢谢。
答案 0 :(得分:0)
我从未使用它,但Liquibase同时支持DB2和Oracle。
答案 1 :(得分:0)
简单的方法是设置两个数据源,从每个商店中获取数据并进行比较。
当然你的记忆会爆炸1000万条记录,所以也许可以尝试分批抓取和比较数据(谨防这样做时发生的更新)
如果使用多线程
,可能会获得进一步的性能提升答案 2 :(得分:0)
如果您担心初始比较的内存消耗,为什么不考虑使用某种形式的记录数据散列。假设一个合适的主键(例如很长)和SHA-1摘要,这意味着每个记录4 + 20 = 24个字节,或每个数据库大约200 Mb。
答案 3 :(得分:0)
每天都会同步数据库,同步后我们需要每天生成一份报告,以了解数据是否有任何差异。
根据同步的完成方式,您可能只能获取输入到Oracle数据库和AS400数据库的每日事务。处理这些日常事务文件比处理整个数据库要快得多。
如果没有每日交易文件,那么这是您的第一步。创建每日交易文件。