So let's say you wanted
to migrate a database from your on-premise systems
to the AWS Cloud.
In this case, you should use DMS
for database migration service.
It's a quick and secure database service
that allows you to migrate your database
from on-premise to AWS
but the cool thing's that it's resilient
and it's self-healing.
And all along sending migration,
the source database remains available
and it supports many types of engines,
such as Homogeneous migrations, so, from Oracle to Oracle
or Postgres to Postgres.
But also, Heterogeneous migrations, for example,
if you want to migrate from Microsoft SQL Server
all the way to Aurora.
And it supports Continuous Data Replication using CDC,
which is change data capture.
Finally, to use DMS, you need to create an EC2 instance
and that EC2 instance
will perform the replication tasks for you.
So very simply, your source database maybe on-premise,
and then you're running an EC2 instance
that has the DMS software,
and it will pull the data from the source database
and continuously.
And put it in the target database.
So the question is, what are the sources
and what are the targets?
You don't need to remember them all
but it's a good idea to just see them once.
The first one is going to be On-Premise
and EC2 database instances, such as, Oracle,
MS SQL Server,
MySQL,
MariaDB,
PostgreSQL,
MongoDB, SAP, and DB2.
Again, you don't need to remember everything, that's fine.
Azure is just going to be for Azure SQL Databases.
RDS, which is all the databases including Aurora
and Amazon S3.
And the targets is going to be On-Premise
and EC2 instances, such as Oracle, MS SQL Server,
MySQL, MariaDB, Postgres, and SAP.
Amazon RDS,
Redshift,
DynamoDB,
S3,
ElasticSearch Service,
Kinesis, and DocumentDB.
So as I said, you don't need to remember everything
but the idea is that you can transform a source,
which is On-Premise,
to target, which is usually AWS,
and these targets are all the common databases on AWS.
So, what if the source database and the target database
do not have the same engine?
Then you need to use something called, "AWS SCT"
or Schema Conversion Tool.
And it will convert the database's schema
from one engine to another.
So, for example, if your using an OLTP,
we can migrate from SQL Server or Oracle
to MySQL, PostgreSQL, or Aurora.
As you can see, on the left hand side,
the database engine is different
from the one on the right hand side.
But also you can transform from analytical processes,
such as Teradata or Oracle, all the way to Amazon Redshift.
So the edge is that, here, the source database
has a different engine than the target database.
In the middle, we have DMS but it's not also running SCT
or Schema Conversion Tool.
And the thing to know, going into the exam,
is that you do not need to use SCT
if you are migrating the same database engine.
So if you're doing On-Premise PostgreSQL to RDS PostgreSQL,
it is the same database engine, it is PostgreSQL.
And so this forth, you will not use SCT.
But if you're doing something such as Oracle to Postgres,
then you will need to use SCT.
So just so you know, the database engine is PostgreSQL
but RDS is just the platform that we're using
to run this database engine.
So how is it good to setup a continuous replication for DMS?
Well, you would have your corporate data center,
for example with an Oracle database as a source,
and an Amazon RDS database from MySQL DB as a target.
And as you can see, we have two different kinds of--
types of database.
So, in this case, we have to use SCT,
otherwise it will not work.
So, the schema conversion tool.
So, we setup the server with AWS SCT installed
and we can setup on-premises.
This is the best practice.
And then, we will do the schema conversion
into our Amazon RDS database running MySQL.
Then we can setup a DMS Replication instance
that will do the full load and the change data capture (CDC)
to have consider this replication,
and so it will perform the data migration
by reading the database on-premises,
the source, Oracle database,
and inserting the data into your private subnets.
That's it.
So that's all you need to know for DMS.
This is for Database Migration Service.
Remember, you need to use SCT
whenever you have two different kinds of databases
that you're migrating from.
So that's it.
I will see you in the next lecture.