As Magento’s end-of-life for the Magento 1 platform draws nigh, we’re continually asked how to ensure that a Magento 2 migration finishes successfully. Our answer is, of course, to let us partner with you and ensure it gets done efficiently and right—but for the benefit of everyone else, here are five steps that should be completed with all Magento 2 migrations.
Related Content: Everything You Need to Know About Magento 2.3
1. Analyze Your Data
Not all data is the same. Some data is mission critical. Some data can be regenerated. And some data was important six years ago when the site was built, but isn’t relevant anymore. DEG always recommends that a cost-benefit analysis be done on each dataset to decide if the data is critical to your new site. Any non-critical information or re-creatable information should be archived and not be migrated. This ensures that you aren’t wasting time and including risk on data that simply doesn’t bring value.
KEY TIP: Don’t waste your time migrating data that you don’t even need.
2. Document Table and Field Mapping
Understanding where each piece of data needs to go is the first step to a successful Magento 2 migration.
Once data from a specific table is designated as necessary to be migrated, documentation needs to be created to specify the names of the new tables and fields wherein each piece of data will be migrated. However, not only is it important to document table and field names, but it’s also essential to document any changes to data formats or relationships. This specification map can be used to inform the configuration of the Magento data migration tool (or any tool being used to migrate the data).
KEY TIP: Understanding where each piece of data needs to go is the first step to a successful migration.
3. Create Data Transformation Handlers
In the case where specific data would need to be transformed, a handler (PHP code) can be written to accommodate the transformation and/or adjustment of the new data. This type of transformation is common when transitioning between two different extensions, or when a new/from-scratch customization is written. As you test on large datasets, pay close attention to the performance of your handlers.
KEY TIP: Data transformation can be time intensive. Pay attention to performance.
4. Perform Iterative Mock Migrations
From the very beginning of the project, it’s essential to use data that represents the live data as closely as possible. Our recommendation is to export the data from the production database, anonymize personally identifiable information (e.g. billing profiles, customer addresses) if necessary, and use this dataset for testing the migration—both in development and for testing in the live environment. This dataset should go through the migration steps over and over to reduce any data risks to the live migration as possible. If you are anonymizing data, the live database migration should be performed at least once with non-anonymized data before the go-live migration.
KEY TIP: Testing with real data is important to prepare for the actual migration of the data.
5. Complete a Live Migration with No Surprises
Although the Magento migration tool can be fun against a live Magento 1 database, we typically back up and restore the live database onto the same server as the new production database. This copy of the live database will serve as the source data and prevents the need for the new production system to have access to the existing infrastructure. It also prevents data from mistakenly being changed on the Magento 1 live database.
DEG’s Magento team stands as one of the most experienced in the industry
KEY TIP: Consider allowing for more downtime to lessen the overall risk.
Although the steps are simple, the actual migration work is not. Partnering with experts who understand the data within Magento 1 and Magento 2 is a necessity for things to transition smoothly. If you’re looking for a high-performing partner to help with your Magento migration needs, reach out to our team—we’d love to help.