Overview
- Online database migration
- Creates tables, loads data, keeps it sync
- Agentless (uses Replication Instance)
Engines
- Supports
- MySQL
- MariaDB
- PostgreSQL
- Oracle
- SQL Server
- Aurora
- Redshift
Model
- Environments
- on-premise
- AWS (EC2, RDS)
- Heterogenous migration possible (e.g. Oracle -> MySQL)
- Does not propagate most of DDL (indexes, sprocs, etc.)
- Must be replicated manually
- To obtain changes it calls database's change capture API
- Oracle: log miner
- MySQL: binlog API
- PostgreSQL: replication slots
Endpoint
- "Conection String" to the database
- required for source/target
Replication Instance
- EC2 instance
- Performs actual work
- Similar to data pipeline
- Instance Types
- C4 (e.g. dms.c4.large), 100GB gp2
- T2 (e.g. dms.t2.micro), 50GB gp2
- Public IP - needed only when source/target accessible over Internet
Migration Task
- Which schema/tables to migrate
- Migration Type
- Full Load, Ongoing Replication
- Ongoing Replication
- Full Load
- Endpoints (source/target)
Encryption
- Encrypts storage used by replication instance and endpoint connection
- Uses KMS (aws/dms)
Use Cases
- One time migration
- Continous replication (e.g. prod->test)
- Move shards between servers
- Moving off commercial database
- Hybrid deployments
- Integrate tables from 3rd party tools (e.g. PeopleSoft)
References
No comments:
Post a Comment