Question #870
A company operates a high-traffic web application on AWS using Amazon EC2 instances and AWS Lambda functions. The application's data is stored in an Amazon Aurora PostgreSQL database configured for high performance with a memory-optimized DB instance. The traffic pattern is highly variable, with unpredictable spikes that overwhelm the database during peak times, leading to performance issues. The current setup is costly during off-peak periods due to underutilized resources.
A solutions architect must propose a solution that automatically scales the database to handle traffic fluctuations while minimizing costs.
Which solution is MOST cost-effective?
Add read replicas to the Aurora database and purchase EC2 Reserved Instances and RDS Reserved Instances.
Migrate the database to an Aurora cluster with multi-master write nodes and purchase Instance Savings Plans.
Deploy an Aurora global database and purchase Compute Savings Plans and RDS Reserved Instances.
Migrate the database to Aurora Serverless v2 and purchase Compute Savings Plans.
Explanation
Option D is correct because Aurora Serverless v2 automatically scales database capacity (ACUs) up/down to handle traffic spikes, ensuring optimal performance during peaks and cost savings during off-peak periods. Compute Savings Plans further reduce costs for EC2 and Lambda usage.
Other options are less optimal:
- A: Read replicas only scale read capacity, not writes. Reserved Instances lock in costs despite underutilization.
- B: Multi-master clusters require manual scaling and Savings Plans still commit to fixed capacity.
- C: Global databases focus on cross-region replication, not dynamic scaling. Reserved Instances don't address variable usage.
Key Points: Aurora Serverless v2 provides auto-scaling for unpredictable workloads, while Savings Plans offer flexible cost optimization for compute services like EC2 and Lambda.
Answer
The correct answer is: D