Question

Difficulty: HardDatabase and Storage Strategy

A global logistics tracking enterprise is designing a real-time shipment monitoring application. The application runs on Amazon ECS containers across multiple Availability Zones in a primary AWS Region (us-east-1) and replicates data to a secondary AWS Region (eu-west-1). The database tier has the following requirements:

- The relational database must support high-throughput write operations and scale read capacity dynamically to handle up to 80,000 queries per second during peak shipping hours.
- In the event of a regional disaster, the database must fail over to the secondary region with a Recovery Time Objective (RTO) of less than 2 minutes and a Recovery Point Objective (RPO) of less than 10 seconds.
- All data at rest must be encrypted using customer-managed KMS keys (CMKs) to satisfy corporate audit compliance.

Which database and storage design meets these requirements?

  1. A
    Deploy an Amazon RDS for PostgreSQL database in a Multi-AZ deployment in us-east-1, and configure a cross-region read replica in eu-west-1. Configure Auto Scaling to dynamically scale the standby instances within the Multi-AZ deployment in us-east-1 to handle the peak read traffic.
  2. Deploy an Amazon Aurora PostgreSQL Global Database with the primary cluster in us-east-1 and a secondary cluster in eu-west-1. Configure Aurora Auto Scaling to dynamically add reader instances in the primary cluster based on CPU utilization. Encrypt the database clusters in each region using local customer-managed KMS keys.Answer
  3. C
    Deploy an Amazon Aurora PostgreSQL database cluster in us-east-1. Configure AWS Backup to perform hourly snapshots of the database cluster and copy them to eu-west-1. In the event of a regional disaster, restore the database cluster from the latest copied snapshot in eu-west-1.
  4. D
    Deploy an Amazon Aurora PostgreSQL Global Database with the primary cluster in us-east-1 and a secondary cluster in eu-west-1. Configure Aurora Auto Scaling to dynamically add reader instances in the primary cluster based on CPU utilization. Encrypt the database clusters in both regions using the default AWS-managed KMS key for Amazon RDS.

Answer

Deploying an Amazon Aurora PostgreSQL Global Database with Auto Scaling for reader instances and local customer-managed KMS keys in each region.
The correct architecture uses Amazon Aurora Global Database to achieve the sub-10 second RPO and sub-2 minute RTO through physical replication. Dynamic scaling of reader instances is handled using Aurora Auto Scaling. Custom-managed keys are utilized in each region to satisfy the strict compliance encryption policy.

Step-by-Step Solution

1
Evaluate the database replication strategy to meet RPO and RTO requirements.
Amazon Aurora Global Database replicates data with latency typically under 1 second and allows failover/promotion of the secondary cluster in less than 2 minutes.
This satisfies the RPO of less than 10 seconds and the RTO of less than 2 minutes.
2
Address the high-throughput read scaling requirements in the primary region.
Configure Aurora Auto Scaling to add reader instances (replicas) dynamically in the primary cluster based on CPU utilization.
Aurora supports up to 15 replicas and Auto Scaling allows the system to handle the peak traffic of 80,000 queries per second.
3
Apply the security encryption requirements for the multi-region configuration.
Encrypt each regional cluster with a local customer-managed KMS key.
Customer-managed keys satisfy corporate audit compliance and support the cross-region encrypted replication required by Aurora Global Database.

Key Concept

Multi-region database design utilizing Amazon Aurora Global Databases with dynamic read scaling and customer-managed KMS encryption.
Rate this question