SlideShare ist ein Scribd-Unternehmen logo
1 von 60
Expert Guidance on
Migrating from Magento 1
to Magento 2
Gordon Knoppe
Business Solutions Architect, ECG
James Cowie
Technical Architect, ECG
Expert Consulting Group
ECG Charter: To provide expert insight, review, and guidance at
every stage of the Magento project lifecycle.
• Customer Success: Leverage innovative technologies and superior talent to exceed
customer expectations in every way.
• Quality and Scale: Drive quality for all implementations, large and small, to ensure
success on the Magento platform.
• Thought Leadership: Develop and publish best practices to increase quality in the
Magento community.
Expert Consulting Group
Preferred Service
Technical Account Manager
Migration Analysis Methodology
Current Magento
Landscape
Codebase & Database
System landscape &
Systems of record
Requirements &
Wireframes
Test Documentation
Existing and Future-state
Infrastructure Diagrams
Environments
Dev Tools & SDLC
StrategiesReview and Assess
• Custom Modules
• Extensions
• New Features
• Theme
• Personal Devices
• Integrations
• Information Migration
• Business Process Changes
• Infrastructure
• Environments
• Testing
• Desktop and personal device
requirements
• Integrity of Magento Core code
• Custom Modules
• Extensions
• Customized Features
• Integrations
• Database
• Theme and Templates
• Test Documentation
• Infrastructure
• Environments
Migration Analysis
Confidence is the feeling you have before you
fully understand the situation.
- Unknown
Analysis Phase - Features
1. Requirements
2. Code Audit
3. Theme
4. Testing Process
Code Audit
• Custom development
• Third-party extensions
• Dependencies between extensions
• Un-used modules
• JavaScript functionality
• Business logic in templates
Requirements
• Obsolete customizations
• Magento native features and functionality in use
• Desktop vs. mobile, progressive enhancement
• Mapping requirements to tests and acceptance
Theme
• Identify theme requirements
• Create theme approach
• Theme is not migrated by tools
Testing Process
• Start early, understand what you’ve got
• End-to-end (integration) testing
• Written documentation and gap analysis
• Mapping tests to requirements?
Analysis - Supporting Elements
1. Landscape Diagram / Integrations
2. Data (size, scope, locations)
3. Environments
Strategy and Vision
If you aim at nothing, you will hit it every time.
- Zig Ziglar
New Features
• New in Magento 2
– Or maybe just new to you?
• Return to native
• Demo, demo, demo for your business users!
Third-party Extensions
• Full inventory of installed extensions and versions
• Remove, return to native, upgrade
• Does it do everything it did in the Magento 1 version?
Theming and Personal Devices
• HTML, CSS, and JavaScript
• Build on a responsive foundation
• Single theme or global multi-store with unified branding?
• Supported devices and responsive break points
Custom Modules
• Code custom built to satisfy your requirements
• Remove or migrate
• Re-architect (refer to James)
– Divide
– Merge
– Refactor
Non-code Related Strategies
• Integrations
• Information Migration
• Infrastructure and Environments
• Testing Strategy
• Business Process Changes
Data Migration in Action
Data is a precious thing and will last longer
than the systems themselves.
Tim Berners-Lee
Magento official Data migration tool
https://github.com/magento/data-migration-tool
Best Practices
• Remove outdated and redundant data
• Close by MySQL instances
• Use a replicated Magento 1 database NOT live
Benchmarks
• Database had:
– 177k products,
– 355k orders,
– 214k customers
Performance results
• Settings migration time: ~10 mins
• Data migration time: ~9 hours for full migration
Performance results
• Site downtime
– Around 5 minutes for re-index.
– DNS propagation
What does it do?
• Store Configuration
• Products
• Customers
• Orders
• Promotions
Modes
• Store Configuration settings
• Data
• Delta (changes since the last run)
Prerequisites
• Have Magento 2 Installed
• Don’t start the Magento 2 cron jobs
• Database Backups
Install
composer config repositories.data-migration-tool git
https://github.com/magento/data-migration-tool
composer require-dev magento/data-migration-tool:<version>
Configure your version
• CE to CE
• CE to EE
• EE to EE
Pick your migration path:
Configure your version
• 1.6.0.0
• …
• 1.9.3.2
Pick the version number of Magento 1 used:
Configuring the tool – config.xml
Copy the file specific to your version.
<source>
<database host="127.0.0.1" name="magento1" user="root"/>
</source>
<destination>
<database host="127.0.0.1" name="magento2" user="root"/>
</destination>
Configuring the tool – config.xml
Copy the file specific to your version.
<source>
<database host="127.0.0.1" name="magento1" user="root"/>
</source>
<destination>
<database host="127.0.0.1" name="magento2" user="root"/>
</destination>
Best Practice: Keep these as close as possible.
Mappings, How it all works
• Mapping Files
– Changing table names
– Changing field names
– Ignoring tables or fields
– Adapt transferring of data
Running the tool
> php bin/magento
migrate
migrate:data
migrate:delta
migrate:settings
Remember the order
• Settings
• Data
• Deltas
Common errors
• Invalid attributes
– Differing data types
• Source field not mapped
Map Files
• Maps data between systems
• Ignore fields
• Field Rules
– Move fields from one name to another
– Transform fields from one type to another
• Rules can apply to:
– Source (m1)
– Destination (m2)
Example
[ERROR]: Source fields not mapped.
Document: sales_flat_order_address. Fields: giftregistry_item_id
Source field not found
• config.xml
<map_file>etc/ce-to-ce/1.9.2.3/map.xml.dist</map_file>
<map_file>etc/ce-to-ce/1.9.2.3/map.xml</map_file>
map.xml
<ignore>
<field>sales_flat_order_address.giftregistry_item_id</field>
</ignore>
map.xml
<ignore>
<field>sales_flat_order_address.giftregistry_item_id</field>
</ignore>
Document Field
Tables that don’t exist on Magento 2
<source>
<document_rules>
<ignore>
<document>Table Name</document>
</ignore>
Deltas
• Only to be ran after initial migration
• Changes since last run
• Run as often as possible (Multiple times per day)
• Start this process early in migration plan
Custom data structures for modules
• Ensure schema exists in both DB’s
• Only add mappings if you want to change things.
• Will migrate data automatically
Cleaning up
• Check databases for temporary tables
• Stop delta process running
• Remove tool tables listed in deltalog.xml
• Remove code from composer
Conclusion for Data
• Practice, Practice and Practice
• Use mappings for everything
• Could use “scripts” but data migration can work well
• Use Ignore responsibly
• Integration with Business plans and process.
Preparing for code
How to bring modules into M2
Automated tools
https://github.com/magento/code-migration
Overview of Official Tool
• Static file generation
• Maps types:
– Models / Resource Models / Collections
– Controllers
– Actions
– Blocks
– XML
• Repeatable process
What’s changed in module code
• Plugins
• Interceptors
• Dependency Injection
• Composer
• UI components
• API & Service contracts ( Interfaces )
Plugins
• Modify Behavior of public methods and class
• Before, Around and After
• Reduces observer dependency mess.
Dependency Injection
• Use DI over new instantiation
• Constructor Arguments
• Removes “God” class and thinking
Composer
• Easily manage module dependencies
• Pin versions of packages based on semantic versioning
• Think create for reuse
• Small helpful packages
• Stop inventing the wheel
UI Components
• Empower forms for adminhtml
• Used through checkout and frontend as new bindings of logic
Concluding Code
• Use automation for “prototype”
• Consider time needed for rewrite
– Learning time
– Implementing time
• Be selective with functionality migrated
Beyond Code and Data
Migrating process. How to deploy
Deployments
• Static assets
• Composer dependencies
• Code generation
• Database coupling*
Options for deployment
• Continuous integration
• Build servers
Any Questions ?
Thank-you for your time.

Weitere ähnliche Inhalte

Was ist angesagt?

Iltam database version control
Iltam database version controlIltam database version control
Iltam database version controluridbmaestro
 
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)Serena Software
 
vRealize Operation 7.5 What's new
vRealize Operation 7.5 What's newvRealize Operation 7.5 What's new
vRealize Operation 7.5 What's newKiss Tibor
 
Denver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute PluginsDenver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute Pluginsdenveraug
 
Workshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databasesWorkshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databasesEduardo Piairo
 
Mastering the enterprise manager 12c environment
Mastering the enterprise manager 12c environmentMastering the enterprise manager 12c environment
Mastering the enterprise manager 12c environmentKellyn Pot'Vin-Gorman
 
Software operability and run book collaboration - DevOps Summit, Amsterdam
Software operability and run book collaboration - DevOps Summit, AmsterdamSoftware operability and run book collaboration - DevOps Summit, Amsterdam
Software operability and run book collaboration - DevOps Summit, AmsterdamMatthew Skelton
 
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - TrivadisTechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - TrivadisTrivadis
 
DevOps+Data: Working with Source Control
DevOps+Data: Working with Source ControlDevOps+Data: Working with Source Control
DevOps+Data: Working with Source ControlEd Leighton-Dick
 
What’s New in Assure MIMIX 10
What’s New in Assure MIMIX 10What’s New in Assure MIMIX 10
What’s New in Assure MIMIX 10Precisely
 
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...Perforce
 
Andreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a StandardAndreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a StandardNeotys_Partner
 
Performance tuning Grails applications
Performance tuning Grails applicationsPerformance tuning Grails applications
Performance tuning Grails applicationsLari Hotari
 
Rational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/Jenkis
Rational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/JenkisRational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/Jenkis
Rational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/JenkisBharat Malge
 
Citrix AppDNA Management Overview v7.6
Citrix AppDNA Management Overview v7.6Citrix AppDNA Management Overview v7.6
Citrix AppDNA Management Overview v7.6Kerry Dirks MCPS MS
 
Alm Specialist Toolkit Team System Roadmap 2008 And Beyond External
Alm Specialist Toolkit   Team System Roadmap 2008 And Beyond ExternalAlm Specialist Toolkit   Team System Roadmap 2008 And Beyond External
Alm Specialist Toolkit Team System Roadmap 2008 And Beyond ExternalChristian Thilmany
 
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0Pierre Feillet
 
"Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O...
"Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O..."Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O...
"Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O...Fwdays
 

Was ist angesagt? (20)

Iltam database version control
Iltam database version controlIltam database version control
Iltam database version control
 
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
Overview and Demonstration of Dimensions CM 14.2 (FUG presentation track 2)
 
What's new in SBM 11.1
What's new in SBM 11.1What's new in SBM 11.1
What's new in SBM 11.1
 
vRealize Operation 7.5 What's new
vRealize Operation 7.5 What's newvRealize Operation 7.5 What's new
vRealize Operation 7.5 What's new
 
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
 
Denver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute PluginsDenver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute Plugins
 
Workshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databasesWorkshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databases
 
Mastering the enterprise manager 12c environment
Mastering the enterprise manager 12c environmentMastering the enterprise manager 12c environment
Mastering the enterprise manager 12c environment
 
Software operability and run book collaboration - DevOps Summit, Amsterdam
Software operability and run book collaboration - DevOps Summit, AmsterdamSoftware operability and run book collaboration - DevOps Summit, Amsterdam
Software operability and run book collaboration - DevOps Summit, Amsterdam
 
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - TrivadisTechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
 
DevOps+Data: Working with Source Control
DevOps+Data: Working with Source ControlDevOps+Data: Working with Source Control
DevOps+Data: Working with Source Control
 
What’s New in Assure MIMIX 10
What’s New in Assure MIMIX 10What’s New in Assure MIMIX 10
What’s New in Assure MIMIX 10
 
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
Learning from the Early Adopters of DevOps: A Guidebook to Success featuring ...
 
Andreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a StandardAndreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a Standard
 
Performance tuning Grails applications
Performance tuning Grails applicationsPerformance tuning Grails applications
Performance tuning Grails applications
 
Rational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/Jenkis
Rational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/JenkisRational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/Jenkis
Rational Team Concert Build Component-Jazz Build Engine, Maven, Hudson/Jenkis
 
Citrix AppDNA Management Overview v7.6
Citrix AppDNA Management Overview v7.6Citrix AppDNA Management Overview v7.6
Citrix AppDNA Management Overview v7.6
 
Alm Specialist Toolkit Team System Roadmap 2008 And Beyond External
Alm Specialist Toolkit   Team System Roadmap 2008 And Beyond ExternalAlm Specialist Toolkit   Team System Roadmap 2008 And Beyond External
Alm Specialist Toolkit Team System Roadmap 2008 And Beyond External
 
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
 
"Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O...
"Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O..."Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O...
"Architect in Consulting: all you wanted to know about "Discovery"", Dmytro O...
 

Ähnlich wie Expert guidance on migrating from magento 1 to magento 2

Continuous Integration
Continuous IntegrationContinuous Integration
Continuous IntegrationXPDays
 
Innovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkInnovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkSandeep Adwankar
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud RoadGert Drapers
 
Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Bruno Capuano
 
Presentation application change management and data masking strategies for ...
Presentation   application change management and data masking strategies for ...Presentation   application change management and data masking strategies for ...
Presentation application change management and data masking strategies for ...xKinAnx
 
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...psaramago1
 
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...psaramago1
 
Mixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting exampleMixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting examplecorehard_by
 
Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2Dana Elisabeth Groce
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps JumpstartOri Donner
 
Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0MongoDB
 
MidwestPHP - Getting Started with Magento 2
MidwestPHP - Getting Started with Magento 2MidwestPHP - Getting Started with Magento 2
MidwestPHP - Getting Started with Magento 2Mathew Beane
 
DesignMind SQL Server 2008 Migration
DesignMind SQL Server 2008 MigrationDesignMind SQL Server 2008 Migration
DesignMind SQL Server 2008 MigrationMark Ginnebaugh
 
Madison PHP - Getting Started with Magento 2
Madison PHP - Getting Started with Magento 2Madison PHP - Getting Started with Magento 2
Madison PHP - Getting Started with Magento 2Mathew Beane
 
Planning for your upgrade to dynamics gp 2013
Planning for your upgrade to dynamics gp 2013Planning for your upgrade to dynamics gp 2013
Planning for your upgrade to dynamics gp 2013SociusPartner
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the DatabaseMichaela Murray
 
Ship code like a keptn
Ship code like a keptnShip code like a keptn
Ship code like a keptnRob Jahn
 

Ähnlich wie Expert guidance on migrating from magento 1 to magento 2 (20)

Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Innovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkInnovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and Framework
 
2015 product java
2015 product java2015 product java
2015 product java
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud Road
 
Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?
 
Presentation application change management and data masking strategies for ...
Presentation   application change management and data masking strategies for ...Presentation   application change management and data masking strategies for ...
Presentation application change management and data masking strategies for ...
 
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
 
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
TechNet livemeeting_Should I upgrade to SCOM 2012 (Dieter Wijckmans's conflic...
 
Mixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting exampleMixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting example
 
Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps Jumpstart
 
Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0
 
MidwestPHP - Getting Started with Magento 2
MidwestPHP - Getting Started with Magento 2MidwestPHP - Getting Started with Magento 2
MidwestPHP - Getting Started with Magento 2
 
DesignMind SQL Server 2008 Migration
DesignMind SQL Server 2008 MigrationDesignMind SQL Server 2008 Migration
DesignMind SQL Server 2008 Migration
 
Resume2015
Resume2015Resume2015
Resume2015
 
Madison PHP - Getting Started with Magento 2
Madison PHP - Getting Started with Magento 2Madison PHP - Getting Started with Magento 2
Madison PHP - Getting Started with Magento 2
 
Planning for your upgrade to dynamics gp 2013
Planning for your upgrade to dynamics gp 2013Planning for your upgrade to dynamics gp 2013
Planning for your upgrade to dynamics gp 2013
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the Database
 
Ship code like a keptn
Ship code like a keptnShip code like a keptn
Ship code like a keptn
 
Foresight
ForesightForesight
Foresight
 

Kürzlich hochgeladen

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Kürzlich hochgeladen (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

Expert guidance on migrating from magento 1 to magento 2

  • 1.
  • 2. Expert Guidance on Migrating from Magento 1 to Magento 2
  • 3. Gordon Knoppe Business Solutions Architect, ECG James Cowie Technical Architect, ECG
  • 4. Expert Consulting Group ECG Charter: To provide expert insight, review, and guidance at every stage of the Magento project lifecycle. • Customer Success: Leverage innovative technologies and superior talent to exceed customer expectations in every way. • Quality and Scale: Drive quality for all implementations, large and small, to ensure success on the Magento platform. • Thought Leadership: Develop and publish best practices to increase quality in the Magento community.
  • 5. Expert Consulting Group Preferred Service Technical Account Manager
  • 6. Migration Analysis Methodology Current Magento Landscape Codebase & Database System landscape & Systems of record Requirements & Wireframes Test Documentation Existing and Future-state Infrastructure Diagrams Environments Dev Tools & SDLC StrategiesReview and Assess • Custom Modules • Extensions • New Features • Theme • Personal Devices • Integrations • Information Migration • Business Process Changes • Infrastructure • Environments • Testing • Desktop and personal device requirements • Integrity of Magento Core code • Custom Modules • Extensions • Customized Features • Integrations • Database • Theme and Templates • Test Documentation • Infrastructure • Environments
  • 7. Migration Analysis Confidence is the feeling you have before you fully understand the situation. - Unknown
  • 8. Analysis Phase - Features 1. Requirements 2. Code Audit 3. Theme 4. Testing Process
  • 9. Code Audit • Custom development • Third-party extensions • Dependencies between extensions • Un-used modules • JavaScript functionality • Business logic in templates
  • 10. Requirements • Obsolete customizations • Magento native features and functionality in use • Desktop vs. mobile, progressive enhancement • Mapping requirements to tests and acceptance
  • 11. Theme • Identify theme requirements • Create theme approach • Theme is not migrated by tools
  • 12. Testing Process • Start early, understand what you’ve got • End-to-end (integration) testing • Written documentation and gap analysis • Mapping tests to requirements?
  • 13. Analysis - Supporting Elements 1. Landscape Diagram / Integrations 2. Data (size, scope, locations) 3. Environments
  • 14. Strategy and Vision If you aim at nothing, you will hit it every time. - Zig Ziglar
  • 15. New Features • New in Magento 2 – Or maybe just new to you? • Return to native • Demo, demo, demo for your business users!
  • 16. Third-party Extensions • Full inventory of installed extensions and versions • Remove, return to native, upgrade • Does it do everything it did in the Magento 1 version?
  • 17. Theming and Personal Devices • HTML, CSS, and JavaScript • Build on a responsive foundation • Single theme or global multi-store with unified branding? • Supported devices and responsive break points
  • 18. Custom Modules • Code custom built to satisfy your requirements • Remove or migrate • Re-architect (refer to James) – Divide – Merge – Refactor
  • 19. Non-code Related Strategies • Integrations • Information Migration • Infrastructure and Environments • Testing Strategy • Business Process Changes
  • 20. Data Migration in Action Data is a precious thing and will last longer than the systems themselves. Tim Berners-Lee
  • 21. Magento official Data migration tool https://github.com/magento/data-migration-tool
  • 22. Best Practices • Remove outdated and redundant data • Close by MySQL instances • Use a replicated Magento 1 database NOT live
  • 23. Benchmarks • Database had: – 177k products, – 355k orders, – 214k customers
  • 24. Performance results • Settings migration time: ~10 mins • Data migration time: ~9 hours for full migration
  • 25. Performance results • Site downtime – Around 5 minutes for re-index. – DNS propagation
  • 26. What does it do? • Store Configuration • Products • Customers • Orders • Promotions
  • 27. Modes • Store Configuration settings • Data • Delta (changes since the last run)
  • 28. Prerequisites • Have Magento 2 Installed • Don’t start the Magento 2 cron jobs • Database Backups
  • 29. Install composer config repositories.data-migration-tool git https://github.com/magento/data-migration-tool composer require-dev magento/data-migration-tool:<version>
  • 30. Configure your version • CE to CE • CE to EE • EE to EE Pick your migration path:
  • 31. Configure your version • 1.6.0.0 • … • 1.9.3.2 Pick the version number of Magento 1 used:
  • 32. Configuring the tool – config.xml Copy the file specific to your version. <source> <database host="127.0.0.1" name="magento1" user="root"/> </source> <destination> <database host="127.0.0.1" name="magento2" user="root"/> </destination>
  • 33. Configuring the tool – config.xml Copy the file specific to your version. <source> <database host="127.0.0.1" name="magento1" user="root"/> </source> <destination> <database host="127.0.0.1" name="magento2" user="root"/> </destination> Best Practice: Keep these as close as possible.
  • 34. Mappings, How it all works • Mapping Files – Changing table names – Changing field names – Ignoring tables or fields – Adapt transferring of data
  • 35. Running the tool > php bin/magento migrate migrate:data migrate:delta migrate:settings
  • 36. Remember the order • Settings • Data • Deltas
  • 37. Common errors • Invalid attributes – Differing data types • Source field not mapped
  • 38. Map Files • Maps data between systems • Ignore fields • Field Rules – Move fields from one name to another – Transform fields from one type to another • Rules can apply to: – Source (m1) – Destination (m2)
  • 39. Example [ERROR]: Source fields not mapped. Document: sales_flat_order_address. Fields: giftregistry_item_id
  • 40. Source field not found • config.xml <map_file>etc/ce-to-ce/1.9.2.3/map.xml.dist</map_file> <map_file>etc/ce-to-ce/1.9.2.3/map.xml</map_file>
  • 43. Tables that don’t exist on Magento 2 <source> <document_rules> <ignore> <document>Table Name</document> </ignore>
  • 44. Deltas • Only to be ran after initial migration • Changes since last run • Run as often as possible (Multiple times per day) • Start this process early in migration plan
  • 45. Custom data structures for modules • Ensure schema exists in both DB’s • Only add mappings if you want to change things. • Will migrate data automatically
  • 46. Cleaning up • Check databases for temporary tables • Stop delta process running • Remove tool tables listed in deltalog.xml • Remove code from composer
  • 47. Conclusion for Data • Practice, Practice and Practice • Use mappings for everything • Could use “scripts” but data migration can work well • Use Ignore responsibly • Integration with Business plans and process.
  • 48. Preparing for code How to bring modules into M2
  • 50. Overview of Official Tool • Static file generation • Maps types: – Models / Resource Models / Collections – Controllers – Actions – Blocks – XML • Repeatable process
  • 51. What’s changed in module code • Plugins • Interceptors • Dependency Injection • Composer • UI components • API & Service contracts ( Interfaces )
  • 52. Plugins • Modify Behavior of public methods and class • Before, Around and After • Reduces observer dependency mess.
  • 53. Dependency Injection • Use DI over new instantiation • Constructor Arguments • Removes “God” class and thinking
  • 54. Composer • Easily manage module dependencies • Pin versions of packages based on semantic versioning • Think create for reuse • Small helpful packages • Stop inventing the wheel
  • 55. UI Components • Empower forms for adminhtml • Used through checkout and frontend as new bindings of logic
  • 56. Concluding Code • Use automation for “prototype” • Consider time needed for rewrite – Learning time – Implementing time • Be selective with functionality migrated
  • 57. Beyond Code and Data Migrating process. How to deploy
  • 58. Deployments • Static assets • Composer dependencies • Code generation • Database coupling*
  • 59. Options for deployment • Continuous integration • Build servers
  • 60. Any Questions ? Thank-you for your time.

Hinweis der Redaktion

  1. Welcome and thank you for joining us Today talking about migrating from Magento 1 to Magento 2 both from a methodology perspective as well as with some practical examples and learnings We hope you’ll find this presentation useful and will leave this talk with a sense of what it takes and how you might approach your migration
  2. We are here representing ECG, both from Europe (well, James is from the UK..) Gordon - I’m based out of our Dublin, Ireland James - UK We’ve both been working pretty much exclusively with Magento 2 these days, since the beta in mid 2015
  3. First a quick introduction for our team, ECG charter Team of experts spread across the US and Europe working with our partners and their merchants on the most interesting and challenging projects Success, Quality, Scale, Thought leadership One key is that we share our learnings back with the product
  4. We work at certain points the lifecycle of a typical engagement or throughout the entire project with our preferred service Left to right... Technical Account Manager - Your resource inside Magento, able to connect directly to members of the core team, escalate issues But we’re here today to talk about
  5. Migration analysis, now you don’t need to read quite all of this as we will be stepping though this as part of this presentation Our approach to preparing for a migration from M1 to M2 LTR: From your current understanding of the landscape, reviewing all of that in the context of these key areas, and having a plan for how to address these strategic focuses of the migration
  6. In this first section I will step through the key areas involved in getting an understanding of your project. Things have probably changed from when you first planned your M1 site, new features have come online, others have been phased out, what is it really that we are going to need to take with us to Magento 2
  7. Need to understand what you’ve got before you can start going We think of There’s 4 things first – and are outputs required for the next phase; STRATEGY Will dive into each in detail next
  8. 60s
  9. Seems obvious right?
  10. 30s
  11. This was one slide per, don’t think we have the time for this now with James
  12. Magento saw the need for data to be migrated and as such developed the official and open source “Data migration tool”. The tool lives on GitHub and as always if you see any issues or improvements please open a pull request or ticket so that the tooling can improve.
  13. Environment: Virtual Box VM, CentOS 6, 2.5Gb RAM, CPU 1 core 2.6GHz
  14. These versions are important and relate to the path found from vendor/magento/data-migration-tool/etc/ and contains all of the specific mappings for the type of migration you are planning.
  15. (e.g. the same field has decimal datatype in Magento 1 and integer in Magento 2)
  16. Deltas operate by checking the source database values for what has changed.
  17. Semantic versioning load security and bug fixes but not major versions.