question

mahajan344 avatar image
mahajan344 asked

Compare millions of records from Oracle to SQL server

I have an Oracle database and a SQL Server database. There is one table say Inventory which contains millions of rows in both database tables and it keeps growing. I want to compare the Oracle table data with the SQL Server data to find out which records are missing in the SQL Server table on daily basis. Which is best approach for this? 1. Create SSIS package. 2. Create Windows service. 3. OR any other better approach I want to consume less resource to achieve this functionality which takes less time and less resource. Eg : 18 millions records in oracle and 16/17 millions in SQL Server
sqloracledata compare
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
Grant Fritchey avatar image
Grant Fritchey answered
To really make this work, you need to have a way to filter the data down to what's been modified. If you attempt to compare 16 million rows to 16 million rows every day to look for differences, regardless of the method you use, it's going to be extremely painful. Once you have a way to filter the data down to have just the data modified for a given period, then, probably, instead of SSIS to move data in and out of the servers I would probably just use OPENQUERY to run the comparison directly. But I would only do this if I could filter the data. If you can't filter the data and have to do the full 16 million row comparison, this method will be very painful.
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.