Which solution should a solutions architect recommend to meet these requirements?
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.
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.
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.
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.
Explanations:
Amazon DynamoDB global tables provide multi-region, fully replicated databases with low-latency read and write operations. This allows the application to maintain a single primary reservation database that is globally consistent while ensuring that updates have less than 1 second latency. Each regional deployment can access the global table through the appropriate regional endpoint, meeting the company’s requirement for separate deployments across multiple regions.
While Amazon Aurora MySQL can provide high availability and performance, deploying Aurora Read Replicas in multiple regions does not guarantee global consistency for writes. Aurora’s replication is primarily designed for read scaling, and cross-region replication for writes can introduce latency beyond the required 1 second. Therefore, this option does not meet the requirement for maintaining a single globally consistent primary reservation database with low-latency updates.
Similar to option B, Amazon RDS for MySQL can provide read replicas, but it lacks the necessary global consistency for a primary reservation database. Cross-region replication can cause delays, which may lead to violations of the sub-1-second latency requirement for updates. This option does not adequately support the requirement for a globally consistent database across multiple regions.
Amazon Aurora Serverless provides auto-scaling capabilities but does not support maintaining a single globally consistent primary database across regions. Deploying separate instances in each region means each instance operates independently, which contradicts the requirement for a single primary reservation database. Additionally, using AWS Lambda functions to synchronize databases can introduce additional latency, making it challenging to ensure updates remain under the 1-second threshold.