Question

Difficulty: EasyOptimizing Compute and Storage Performance

A company runs a critical reporting application that queries an Amazon RDS PostgreSQL Multi-AZ DB instance. During monthly billing cycles, CPU utilization on the database spikes to 100% due to heavy read-only queries, causing performance degradation for other application functions. A solutions architect needs to optimize the database performance to offload these read queries. Which of the following is the most effective solution to resolve the bottleneck?

  1. Create one or more RDS Read Replicas of the database, and configure the reporting application to direct its read queries to the read replica endpoints.Answer
  2. B
    Configure the reporting application to direct the read-only query traffic to the standby instance of the RDS Multi-AZ deployment.
  3. C
    Deploy an Application Load Balancer in front of the RDS Multi-AZ DB instance, and request that AWS Support pre-warm the load balancer to handle the query traffic spikes.
  4. D
    Deploy an Amazon ElastiCache for Memcached cluster to act as a persistent database replication target for the reporting queries.

Answer

Create one or more RDS Read Replicas of the database, and configure the reporting application to direct its read queries to the read replica endpoints.
Creating RDS Read Replicas allows you to offload read-heavy workloads from the primary DB instance, reducing CPU utilization and optimizing database performance. Amazon RDS supports replication to multiple read replicas, allowing client applications to separate read and write paths efficiently.

Step-by-Step Solution

1
Identify the performance bottleneck on the primary database.
Heavy read-only query spikes during billing cycles are causing 100% CPU utilization.
This establishes that the database is experiencing a read-bound compute bottleneck.
2
Evaluate the current Multi-AZ deployment's capability to handle read queries.
Multi-AZ standby instances are passive and cannot be queried.
This eliminates using the standby instance directly for reads.
3
Implement a horizontal read-scaling solution.
Provision RDS Read Replicas that asynchronously replicate data from the primary instance.
Read replicas are designed specifically to offload query workloads and scale read operations.
4
Point the reporting application to the new read replica endpoints.
Analytical traffic is isolated to the read replicas, relieving CPU pressure on the primary database.
This completes the optimization path by redirecting read queries away from the primary transactional instance.

Key Concept

Scaling read performance using Amazon RDS Read Replicas
Estimated Time:1m 0s
Rate this question