Question

Difficulty: MediumOptimizing Compute and Storage Performance

An enterprise financial analytics application processes large datasets using a fleet of Amazon EC2 instances. The application reads data from an Amazon RDS for PostgreSQL DB instance in a Multi-AZ deployment, and writes temporary raw output files to attached Amazon EBS gp3 volumes. During daily batch processing runs, performance degrades. Database metrics show high CPU utilization and elevated read latencies on the primary database due to analytical queries. Concurrently, the EC2 instances show high I/O wait times, indicating that the EBS volumes are bottlenecked. Which two modifications should the Solutions Architect implement to optimize the performance of the database and compute tiers? (Select TWO.)

  1. Deploy one or more Amazon RDS read replicas, and configure the batch application to route read-intensive analytical queries to the replica endpoints.Answer
  2. Modify the EBS gp3 volumes on the EC2 instances to increase the provisioned throughput and IOPS, or utilize EC2 instance store volumes for temporary scratch space.Answer
  3. C
    Enable query caching and read auto-scaling directly on the standby replica of the Multi-AZ RDS DB instance to distribute the analytical query load.
  4. D
    Request that AWS Support pre-warm the Application Load Balancer (ALB) that sits in front of the EC2 batch processing fleet to ensure sufficient throughput for incoming data.

Answer

Deploy Amazon RDS read replicas and route read queries to them, and modify the EBS gp3 volumes to increase provisioned throughput/IOPS or use instance store volumes.
Creating RDS read replicas offloads analytical query workloads from the primary database instance, resolving primary DB CPU and read latency issues. Upgrading the gp3 EBS volumes' provisioned performance or switching to instance store volumes for temporary scratch files provides the high throughput and IOPS necessary to eliminate EC2 I/O bottlenecks.

Step-by-Step Solution

1
Analyze the database bottleneck.
Identify that CPU and read latencies on the primary database are caused by read-heavy analytical queries on a Multi-AZ deployment.
Multi-AZ deployments do not provide horizontal scaling; standby instances are passive and cannot handle read traffic.
2
Address the database bottleneck.
Create Amazon RDS read replicas and configure the application to send read queries to the new replica endpoints.
This offloads read operations from the primary DB instance, freeing up resources and reducing latency.
3
Analyze the compute storage bottleneck.
Identify that high I/O wait times on EC2 instances are due to the performance limits of the gp3 EBS volumes during batch file writes.
Standard gp3 baseline performance may be insufficient for high-throughput sequential or random I/O operations.
4
Address the compute storage bottleneck.
Increase provisioned throughput and IOPS on gp3 volumes or utilize local instance store volumes for transient scratch space.
This provides the required storage performance to eliminate I/O wait times during processing.

Key Concept

Horizontal scaling of read workloads using RDS read replicas and optimization of EC2 storage using provisioned EBS performance or instance store volumes.
Estimated Time:2m 0s
Rate this question