In this lab, we will work through the process of migrating a normalized relational database to an Amazon DynamoDB table.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Investigate Source Database
Log in to the provided bastion host:
ssh cloud_user@<BASTION_PUBLIC_IP>
Connect to the source database:
mysql -h <SOURCE_DATABASE_PUBLIC_IP> -u cloud_user -pbettertogether -D employees
Use the following queries to gather information about the source database:
SHOW TABLES;
DESCRIBE dms_source;
SELECT * FROM dms_source LIMIT 10;
- Design Data Model and DynamoDB Table
With the information gathered from the source database, design your data model with consideration to the provided access patterns, and map this to DynamoDB table partition/sort keys, as well as any local or global secondary indexes.
- Create `employees` DynamoDB Table
Navigate to the DynamoDB web console and create the table. (It does not have to be named
employees
, but this is the table name used in the solution videos/files.)- Create DMS Task Mapping Rules
With the information from the source database, and the data model you’ve arrived at, create DMS task mapping rules to map the data from the source database to your DynamoDB table.
- Create/Start DMS Task
Navigate to the DMS web console, create a new task with the mapping rules you created, and set the task to start on creation.
- Test Access Patterns
Once the DMS task has completed, navigate to the DynamoDB web console and test that you have satisfied the requested access patterns.