Document toolboxDocument toolbox

Can MettleCI perform comparison tests between the data in two versions of a database?

If “comparison tests” means comparing the contents of each row between old and new environments then yes, MettleCI’s Data Comparison capability can handle that. It has been tested many times against Oracle targets.  However, we should consider the fact that Comparison Tests do require some work by the customer to do the following:

  1. Capture the baseline input data, pre-load database state and post-load database state (via a controlled execution in the old environment at time of the Job “golden copy” snapshot).

  2. Configure the MettleCI Comparison Test the in-scope table. Importantly, this includes the specification of which columns must be ignored because the data loaded into them will change each time the Job is executed.

  3. Manage the restoration of target databases to pre-load state after the execution of each batch test

  4. Update the MettleCI Comparison Test configurations when Jobs or data change during the life of the upgrade project. MettleCI will, of course, automatically track whenever a Job is changed in the old environment so it can also trigger an action for the project team to analyse the effect on associated Comparison Tests.

For these reasons, our recommendation is the MettleCI Comparison Test makes most sense when it is used on a targeted basis and in conjunction with other target data validation tests (for which MettleCI can also automate execution and capture results).  If the customer has in mind a 100% comparison of every record in of the database, there are other tools that will be better for that.  We also believe that this scope would be excessive within the context of an upgrade initiative.

© 2015-2024 Data Migrators Pty Ltd.