Database/Data migration testing:
It is important to note that testing a data migration should start well in advance of the actual data being migrated. It is quite typical that one of the most important commodities that a business controls, owns, or maintains is its data and therefore any data migration should be considered high risk and should be subjected to significant verification and validation efforts. A business may choose to reduce the risk level against the data migration, but it is always prudent to start off with data migration as a high-priority task to ensure it is successful.
A common term for exercising a data migration task is to perform an ‘Extract, Transform and Load’ (ETL) function which sees extracted data from various sources being fixed and then loaded into the target data warehouse. This document offers some of the keys consideration points to a test team so that effective test planning and strategizing can be achieved for an ETL project.
When strategizing the data migration testing, the following phases of testing need to be considered:
Pre-Data Migration Testing
Formal Data Migration Design Review
Post-Data Migration Testing
Data Migration User Acceptance Testing
Cell-by-Cell Comparison using Query Surge
Ad Hoc Testing
Performance or Benchmark Testing
Creating a data migration plan:
A data migration project can be a challenge because administrators must maintain data integrity, time the project so there is minimal impact to the business and keep an eye on costs. Any problem that occurs during the migration will affect the business, so a data migration plan is key to ensuring minimal disruption and downtime to the active business processes.
Factors to consider during a data migration project include how long the migration will take; the amount of downtime required; and the risk to the business due to technical compatibility issues, data corruption, application performance issues, and missed data or data loss.
There are three broad categories of data movers.
Host-based software is best for application-specific migrations, such as platform upgrades, database replication and file copying.
Array-based software is primarily used to migrate data between like systems.
Network appliances migrate volumes, files or blocks of data depending on their configuration.
The following best practices should be used to protect data during a migration.
Understand what data you are migrating, where it lives, what form it’s in and the form it will take at its new destination.
Extract, transform and deduplicate data before moving it.
Implement data migration policies so data is moved in an orderly manner.
Test and validate the migrated data to ensure it is accurate.
Audit and document the entire data migration process.