Ends in

Get Certified in Cloud Security - $4 OFF our AWS Security Specialty and AZ-500 Azure Security Engineer Associate Practice Exams!

Find answers, ask questions, and connect with our
community around the world.

Home Forums AWS AWS Certified Database – Specialty DMS Replication Instance

  • DMS Replication Instance

  • vishal-kohli

    August 31, 2020 at 4:14 pm

    There is one question on “Where should the replication Instance be placed? Source or Target VPC.” I see https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/migrate-an-amazon-rds-for-oracle-database-to-another-aws-account-and-aws-region-using-aws-dms-for-ongoing-replication.html it says create in Target VPC. Can you please confirm?

  • Jon-Bonso

    September 2, 2020 at 6:45 pm

    Hi Vishal,

    The answer to this is: It depends.

    Please refer to the following documentation:

    You can set up the replication instance in a Region in which the primary database instance is running or in a DR Region. If you are only migrating or replicating a subset of data using filters or transformations, you should keep the replication instance on the source side, because the amount of data transferred over the network to the DR Region is less.



    Let us know if you need further assistance. The Tutorials Dojo team is dedicated to help you pass your AWS exam on your first try!


    Jon Bonso @ Tutorials Dojo

    • This reply was modified 3 years, 9 months ago by  Jon-Bonso.
  • ross-mohan

    May 16, 2021 at 11:14 pm

    I struggled with the same question. The question did not make clear whether there were filters or transformations as in “heterogenous” or as in “subset of rows”.

    In fact, the AWS documentation itself is unclear — “filters and transformations” is not an exact synonym for “heterogeneous” migration, and I have written them about it.

    Meanwhile, I think this question needs some “love” on the TD side.

  • Klimok

    July 30, 2021 at 4:11 am

    Hi, I am joining the club of the people struggling with this question.

    A Database Engineer plans to migrate an Oracle database instance running in the Northern California (us-west-1) region to an Amazon RDS for MySQL DB instance located in the Northern Virginia (us-east-1) region using AWS DMS. The source database is configured to dynamically transform and manipulate data using transformation rule expressions.

    How should the engineer set up the AWS DMS replication instance to achieve the MOST optimal performance?

    In Stephane’s course, he explicitly recommended placing the RI into the destination AZ. This article describes different configurations, all with RI in the Target VPC https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.VPC.html

  • Joboy-Pineda-TD

    July 30, 2021 at 8:41 pm

    Hello, Joboy here, Jon’s co-author. I noticed this question has been asked a lot. Thank you for the inputs. We will review the question and modify accordingly to ensure that we make it more accurate and sufficient. We highly appreciate the feedback, and we’re thankful that you actually do bring it up here in the forums. 🙂

    I understand that this can be a debatable topic. However, it is the case with performance tuning, where you really talk about trade-offs (e.g. faster/more expensive vs slower/cheaper). AWS blogs even compare the different scaling features for a DynamoDB table. In this practice, it is dangerous to claim a “One-Size-Fits-All” solution. Best practices should be treated as a solid starting point in assessing trade-offs. However, the key is in the details.

    Recommending to put it in the target VPC – 3 usual reasons: 1) Avoid making changes to Production Environment unless it is absolutely necessary; 2) Placing the AWS DMS instance in the target VPC makes it less complex, from a network standpoint, to transfer the data to the new database instance, where a lot of other database migration tasks (e.g. sanity checks, DDLs, audit) need to be accomplished. Ideally, you want to keep all these components as close together as possible; and 3) It’s best practice. Like in this scenario, migration is not supposed to be a regular operation. It is normally a one-time procedure. You want to avoid putting any performance hit on the Production DB instance. Furthermore, the DMS will eventually have to be removed, and you do not want to make another Production change to stop and terminate it.

    This is why this statement is very important: “The source database is configured to dynamically transform and manipulate data using transformation rule expressions.” It signifies that a complex amount of processing will take place between the source database and the AWS DMS instance. If the migration procedure will cause some performance hit to the Production environment, which probably will because of the transformation requirements, you want to accomplish your source database tasks as fast as possible. Network latency is expensive and the distance between California to Virginia should be considered. However, we still want to avoid hitting the Production environment as much as possible. Among the choices, placing it in the source VPC is as close as you can get without impacting the source DB instance makes the most sense. Furthermore, putting the DMS instance closer to the source database will minimize the amount of data transferred in between regions caused by transformations.

    Hope this helps.


  • SalientListener

    February 24, 2022 at 10:07 pm

    TBH I too have struggled with this question. The statement “go AGAINST best practices when transformation/filters are involved” is almost impossible to even logically guess considering the vastness of the course and such a highly specific exception to what documentation and udemy suggest.

Viewing 1 - 6 of 6 replies

The forum ‘AWS Certified Database – Specialty’ is closed to new discussions and replies.

Original Post
0 of 0 posts June 2018