I'd probably try the change detector- pretty simple to use and I've always had success with highlighting any differences between 2 tables using this
https://www.safe.com/transformers/change-detector/
There are several ways to accomplish this, but here's the simplest one:
- Insert an Oracle reader that reads oracle11->database1->table1
- Insert an MS SQL Server reader that reads mssqlserver2014->database1->table1
- Send both reader outputs into a ChangeDetector transformer.
Hi @click4vk, the ChangeDetector, UpdateDetector, or Matcher can be used to compare the tables depending on your comparsion criteria. Check out: Change Detection
Thanks for your response
I am very new to use this tool
I have created one reader for oracle and one more reader for MS SQL server 2014
How to create changedetector and view the difference in the data? If someone can give me a step by step instructions on how to do this, that would be very helpful.
I would choose the UpdateDetector, as it uses the key attribute to have a key on how to make the comparison.
One would like to keep in mind when using the ChangeDetector:
- Attributes coming from Oracle fieldnames are usually converted to uppercase, whereas MSSQL attributes do not (fix by BulkAttributeRenamer);
- Oracle attribute encoding might be different from MSSQL encoding (fix by AttributeEncoder)
- Oracle reader adds different attributes than MSSQL (fix by AttributeRemover, sorry, AttributeManager)
- Coordinate precision might not be the same across database platforms (be careful using CoordinateRounder)
All of this might cause the ChangeDetector to conclude that there is a change where humans usually find there is not.
It is also good to remember setting the parameters for database read block size when comparing large database tables, it takes a lot of overhead scraping 2,500,000 records from a database server in chunks of 100 records each:
MSSQL_ADO_IN_READ_CACHE_SIZE_MSSQL_ADO
ORACLE_NONSPATIAL_IN_CHUNK_SIZE_ORACLE_NONSPATIAL