【发布时间】:2021-12-14 14:58:06
【问题描述】:
当前设置
SOR 是一个 Oracle 系统 报表是一个 SQL Server 系统
需要将一个相当大的表从 Oracle 复制到 SQL 框。
99% 的数据不会被修改,但会在 Oracle 表中添加新记录。 数据增量需要放入 SQL Server。
SQL Server 上的数据刷新计划在凌晨 2:00 进行。
我担心提取 12 亿条记录的全部数据所需的时间会超过窗口所允许的时间。
我折腾的一个解决方案是只提取当前月份的数据,从 SQL 框中删除前 30 天的数据,只从 Oracle 系统中提取最近 30 天的数据。
这个想法的一个巨大问题是......没有日期字段可以使用UGH
另一个想法是在SQL Server表中添加ROWID字段,并对该值进行全表扫描,如果没有找到,则添加它。如果发现更新新字段。这感觉就像是对每条记录的强力全表扫描(不理想 - IMO)
如果有人有不同的想法,我真的很想听听。
【问题讨论】:
-
在 Oracle 端创建一个表,以跟踪哪些记录已成功传输/更新到 SQL 端。这是在 Oracle 表中查找新记录的一种更有效的方法。
标签: sql-server oracle