AWS Certified Solutions Architect – Associate (SAA-C03) — Question 487
A company has a web application for travel ticketing. The application is based on a database that runs in a single data center in North America. The company wants to expand the application to serve a global user base. The company needs to deploy the application to multiple AWS Regions. Average latency must be less than 1 second on updates to the reservation database.
The company wants to have separate deployments of its web platform across multiple Regions. However, the company must maintain a single primary reservation database that is globally consistent.
Which solution should a solutions architect recommend to meet these requirements?
Answer options
- A. Convert the application to use Amazon DynamoDB. Use a global table for the center reservation table. Use the correct Regional endpoint in each Regional deployment.
- B. Migrate the database to an Amazon Aurora MySQL database. Deploy Aurora Read Replicas in each Region. Use the correct Regional endpoint in each Regional deployment for access to the database.
- C. Migrate the database to an Amazon RDS for MySQL database. Deploy MySQL read replicas in each Region. Use the correct Regional endpoint in each Regional deployment for access to the database.
- D. Migrate the application to an Amazon Aurora Serverless database. Deploy instances of the database to each Region. Use the correct Regional endpoint in each Regional deployment to access the database. Use AWS Lambda functions to process event streams in each Region to synchronize the databases.
Correct answer: A
Explanation
Amazon DynamoDB global tables provide a fully managed, multi-Region, and multi-active database solution that delivers single-digit millisecond latency for both reads and writes, meeting the sub-second update requirement. Options B and C rely on read replicas, which do not support multi-Region writes to a single primary database with sub-second consistency. Option D introduces significant complexity and latency overhead by using AWS Lambda to manually synchronize independent Aurora Serverless databases.