Phase 2: Plan - AWS Prescriptive Guidance

Phase 2: Plan

In this phase, you use the information gathered during the preparation phase and come up with the migration strategy. A critical aspect of migration planning is rationalizing the information you collected against the 6 Rs of migration: rehost, replatform, refactor/re-architect, repurchase, retire, and retain.

Choosing your migration strategy depends on your business drivers for cloud adoption, as well as time considerations, business and financial constraints, and resource requirements. If you want to sustain your current workload in the cloud, choose rehosting. However, if you want to optimize and scale your workloads, consider one of the other options.

Here’s an overview of the 6 Rs of database migration. These are illustrated in the following diagram and discussed in detail in the AWS migration whitepaper.


    Database migration paths

  • Rehost (lift and shift) – Move an application to the cloud without making any changes. For example, migrate your on-premises Oracle database to Oracle on an Amazon Elastic Compute Cloud (Amazon EC2) instance in the AWS Cloud.

  • Replatform (lift and reshape) – Move an application to the cloud, and introduce some level of optimization to take advantage of cloud capabilities. For example, migrate your on-premises Oracle database to Amazon RDS for Oracle in the AWS Cloud.

  • Refactor (re-architect) – Move an application and modify its architecture by taking full advantage of cloud-native features to improve agility, performance, and scalability. For example, migrate your on-premises Oracle database to Aurora PostgreSQL. This strategy can also include rewriting your application to use the purpose-built databases that AWS offers for different workflows. Or, you can choose to modernize your monolithic application by breaking it down into smaller microservices that access their own database schemas.

  • Repurchase (drop and shop) – Change to a different product, typically by moving from a traditional application to a software as a service (SaaS) product, and migrate data from your on-premises application to the new product. For example, migrate your customer data from your on-premises customer relationship management (CRM) system to Salesforce.com.

  • Retire – Decommission or remove applications that are no longer needed in your source environment.

  • Retain (revisit) – Keep applications in your source environment. These might include applications that require major refactoring, and you want to postpone that work until a later time, and legacy applications that you want to retain because there’s no business justification for migrating them.