[AWS] AWS Database Migration Service (DMS)

AWS DMS is a data migration service that migrates on-premise databases to AWS or databases within AWS.

Database Migration Service (DMS)

The AWS DMS can migrate your data to and from the most widely used commercial and open-source databases.

  • The source database remains fully operational during the migration, minimizing downtime to applications that rely on the database.
  • DMS Supports homogeneous and heterogeneous migration
    • Homogeneous migrations such as Oracle to Oracle or MySQL to MySQL
    • Heterogeneous migrations between different database platforms, such as Oracle or Microsoft SQL Server to Amazon Aurora.

Common Use Cases

  • Migration
    • On-premise data to AWS
    • Cloud-to-cloud Migration
    • Change the data type or database engines (Heterogeneous migrations)
  • Replication
    • Multi-cloud copies
    • DB to Data Lake or Data warehouse
  • Consolidation
    • Reduce the data size just for core information
    • Cost Reduction

Working with DMS

Replication Instances

A replication instance is a specialized compute resource.

  • It does:
    • Initial load
      • Full load
    • Ongoing replication (update) of changes
      • Change data capture (CDC)
    • Monitoring changes and publishing logs


  • Endpoint identifier
  • Source engine
  • Database engine and connection details
  • Optional Configuration
    • KMS
    • Tags


  • Endpoint identifier
  • Target engine
  • Optional Configuration
    • KMS
    • Tags

Replication Task

A replication task is a migration job running on the replication instance.

Task Configuration

  • Task identifier
  • Replication instance
  • Source and Target
  • Migration type
    • Migrate existing data
      • one-time migration
    • Migrate existing data and Replicate ongoing changes
      • initial + continuous replication
    • Replicate data changes only
      • replication of new changes only

Task Settings

  • Target table preparation
OptionExisting tablesNon-existing tablesExisting Data
Do nothingNo changeCreateNo change
Drop tablesDrop and createCreateclear
TruncateNo changeCreateclear
  • LOB (Large Object such as Blob) column handling
    • Do not include
      • ignore LOB columns
    • Full LOB
      • include all LOB data
    • Limited LOB
      • truncate LOB data to the defined max size (the default is 64KB)

Other Configurations

  • Validation
  • Logging
    • CloudWatch logs
  • Table mappings
    • Schema
    • Include/Exclude tables

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s