AWS Database Migration Service features

Overview

AWS Database Migration Service (AWS DMS) helps you quickly and securely migrate databases and data warehouses to AWS with minimal downtime and zero data loss. AWS DMS offers you the ability to plan, assess, convert, and migrate databases and data warehouses at scale under one central service, saving time, resources, and costs. The source database remains fully operational during the migration to the target database, minimizing downtime to applications that rely on the source database. AWS DMS can handle even the most complex migrations, including simultaneously migrating tens or even hundreds of workloads.

AWS DMS can migrate your data to and from the most widely used commercial and open source databases and data warehouses. The source database can be located on your own premises outside of AWS, a self-managed database running on an Amazon Elastic Compute Cloud (Amazon EC2) instance, a fully managed Amazon database, or a third-party database service. The target database can be a self-managed database running on an Amazon EC2 instance or a fully managed Amazon database. Refer to the list of supported source and target engines in the AWS DMS User Guide.

In addition to migrations, AWS DMS supports continuous replication for many use cases, including geographic database distribution and development and test environment synchronization. A continuous replication task will apply changes from the source database to the target database with minimal latency. You can replicate data from a single database to one or more target databases or consolidate and replicate data from multiple databases to one target database. All AWS DMS features, such as data validation and transformations, are available for a replication task.

illustration of databases

Simple to use

AWS DMS is simple to use. There is no need to install any drivers or applications, and it doesn’t require changes to the source database in most cases. You can begin a database migration in only a few steps in the AWS Management Console.

AWS DMS Fleet Advisor is a free, fully managed capability that automates migration planning by inventorying and assessing your on-premises operational database and data warehouse fleet and identifying potential migration paths. Using historical performance and usage patterns collected from self-managed databases, AWS DMS Fleet Advisor can recommend target database engines and instance options as well as estimate costs.

AWS DMS Fleet Advisor delivers results in a few hours, instead of weeks or even months, without using third-party tools or hiring migration experts. You can start your migration planning using AWS DMS Fleet Advisor in a few steps in the AWS DMS console.

 

 

Breadth of choices

With AWS DMS, you can perform a homogeneous database migration by migrating like-for-like databases or modernize with a heterogeneous database migration by migrating across different databases. AWS DMS supports 20-plus databases and data warehouses as source and target endpoints.

For homogenous migrations, the schema structure, data types, and database code are already compatible between source and target databases. Examples of homogeneous migrations include: Oracle to Amazon RDS for OracleMySQL to Amazon Aurora MySQLMySQL to Amazon RDS for MySQL, or Microsoft SQL Server to Amazon RDS for SQL Server. You create a migration task with connections to the source and target databases, and then start the migration in only one step. AWS DMS takes care of the rest.

AWS DMS has a few options for homogeneous migrations. The first option is using built-in native database tooling to automatically migrate to the target database without the need to manage replication instances. It’s best used to migrate all data types and secondary objects for MySQL and PostgreSQL migrations to Aurora and Amazon RDS as target engines. Alternative options, such as using AWS DMS Serverless or AWS DMS replication instances, are available for all other engines.

For heterogenous migrations, the source and target database engines are different, such as in the case of Oracle to AuroraOracle to PostgreSQL, or Microsoft SQL Server to MySQL migrations. Heterogeneous migrations are a two-step process. As the schema structure, data types, and database code of source and target databases can be quite different, the first step is to convert the source schema and code to match that of the target database. The second step is to migrate data from the source database to the target database using AWS DMS. You can choose between AWS DMS replication instances or AWS DMS Serverless, which automates the time-consuming tasks of provisioning, monitoring, and scaling migration resources. All required data types will be automatically converted during the migration. 

For schema conversion, AWS DMS offers two schema conversion solutions that can save weeks to months of effort. You can choose to either sign in to the AWS DMS console to initiate the AWS DMS Schema Conversion (AWS DMS SC) workflow for a fully managed experience or download the AWS Schema Conversion Tool (AWS SCT) software to perform a similar assessment and conversion on your local system.

Both options will automatically assess and convert the source database schema and most of the database code objects, including views, stored procedures, and functions, to a format compatible with the target database. In a few steps, you can generate an assessment report that shows the schema conversion complexity. This report provides prescriptive guidance on how to resolve any incompatibilities between the source and target database engines. Any objects that cannot be automatically converted are clearly marked as action items with prescriptive instructions on how to convert so that they can be manually converted to complete the migration. Once schema conversion is complete, AWS DMS can migrate data from source to target.

AWS DMS SC uses generative AI in combination with a traditional rule-based approach to further reduce the number of database objects that require manual conversion. Using generative AI recommendations, you can simplify and accelerate your database migration projects, particularly when converting complex code objects such as stored procedures, functions, or triggers. AWS DMS Schema Conversion with generative AI accelerates migration by providing reviewable code recommendations, reducing time and effort for complex conversions and enabling faster, more reliable database migrations. The feature is available for schema conversions from commercial engines, such as Microsoft SQL Server, to Amazon Aurora PostgreSQL-Compatible Edition and Amazon Relational Database Service (Amazon RDS) for PostgreSQL. You can learn more about AWS DMS SC in our documentation and getting started guide. Check out the documentation on AWS DMS SC supported database conversions, and AWS SCT conversions.

For converting embedded SQL statements in your application, Amazon Q Developer can scan your Java application source code and convert the code from Oracle to Amazon Aurora PostgreSQL or Amazon RDS for PostgreSQL.

Minimal downtime

AWS DMS helps you migrate your databases to AWS with virtually no downtime. All data changes to the source database that occur during the migration are continuously replicated to the target, allowing the source database to be fully operational during the migration process. After the database migration is complete, the target database will remain synchronized with the source for as long as you choose, allowing you to switch over to the target database at a convenient time.

Cost-effective

AWS DMS on-demand instances let you pay for database migration capacity by the hour with no long-term commitments. This frees you from the costs and complexities of planning, purchasing, and maintaining hardware, making the entire process quick and inexpensive. As such, migrating a terabyte-size database can be done cost effectively.

AWS DMS Serverless makes it even easier and more cost-effective to migrate data without the need to provision replication instances or manually monitor use and adjust capacity. It automatically provisions, monitors, and scales migration resources to the optimal capacity needed to meet demand, removing instance management tasks like capacity estimation, provisioning, cost optimization, and managing replication engine versions and patching. You no longer need to overprovision resources for peak demand—and you only pay for the data migration capacity you use. AWS DMS Serverless supports several use cases, including continuous data replication, database consolidation, and both heterogeneous and homogeneous migrations. To learn more, visit the AWS DMS Serverless documentation.

You can use AWS DMS to further optimize your costs by consolidating databases, which reduces the number of database instances, thereby lowering infrastructure costs. By combining multiple databases into a single, optimized system, organizations can remove redundant storage, decrease licensing fees, and cut operational costs. Database consolidation can be done for homogeneous and heterogeneous migrations.

Reliable

AWS DMS is highly resilient and self-healing. It continually monitors source and target databases, network connectivity, and replication instances. In the case of an interruption, it automatically restarts the process and continues the migration from where it stopped. The AWS DMS Multi-AZ option provides high availability for database migration and continuous data replication with redundant replication instances.

Developer productivity

AWS DMS can be used to migrate data both into and out of the cloud for development purposes. There are two common scenarios. The first is deploying development, testing, or staging systems on AWS to take advantage of the cloud’s scalability and rapid provisioning. This lets developers and testers use copies of real production data, and then copy updates back to the on-premises production system.

The second scenario is when development systems are on premises (often on personal laptops) and you migrate a current copy of an AWS production database to these on-premises systems—either once or continuously. You can avoid a disruption to existing DevOps processes while ensuring the up-to-date representation of your production system.

FAQs

AWS DMS is used for database and data warehouse migrations to and from AWS, in addition to continuous data replication and database consolidation. With AWS DMS, you can migrate to a fully managed AWS database. By moving your self-managed open source and commercial databases to fully managed AWS database services, you gain agility, faster time to market, and improved availability while reducing operational overhead.

Alternatively, you can choose to modernize your databases through heterogenous migrations to AWS purpose-built databases. With AWS, you can choose the right databases and optimize for price performance at any scale.

AWS DMS offers up to 750 hours per month for a Single-AZ dms.t2.micro instance as part of the AWS Free Tier. Depending on the feature, there is a cost based on usage. For AWS DMS Fleet Advisor and AWS DMS SC, you only pay for the storage you use. For AWS DMS migration options, whether you’re using replication instances or serverless options, you pay by the hour for the capacity you use. Refer to AWS DMS pricing for more details.