Soru

Zorluk: OrtaCost-Optimized Database Design and Capacity Planning

A company runs a read-heavy content management application on AWS. The application database is deployed on an Amazon RDS for MySQL DB instance. The workload consists of a steady, low-volume write rate of 1010 transactions per second, but read requests regularly spike up to 5,0005,000 queries per second during peak hours. The database currently uses a db.r6g.4xlarge Multi-AZ instance to handle the peak read traffic, but the company wants to optimize the high database costs while maintaining high availability. Which database architecture is the most cost-effective while meeting the application's availability and performance needs?

  1. A
    Modify the primary database instance to a Single-AZ deployment, and configure a Read Replica in a different Availability Zone to serve as the automatic failover target in the event of a primary database outage.
  2. Modify the primary database instance to a smaller Multi-AZ instance class, such as db.r6g.large, to handle the steady write workload, and deploy RDS Read Replicas to offload the peak read traffic.Cevap
  3. C
    Migrate the database to Amazon DynamoDB and configure the table in Provisioned Capacity mode with a fixed 5,0005,000 Read Capacity Units (RCUs) and 1010 Write Capacity Units (WCUs) to guarantee performance during peak hours.
  4. D
    Keep the db.r6g.4xlarge Multi-AZ deployment to handle peak workloads, and purchase a Compute Savings Plan to reduce the hourly compute cost of the database instance.

Cevap

Modify the primary database instance to a smaller Multi-AZ instance class, such as db.r6g.large, to handle the steady write workload, and deploy RDS Read Replicas to offload the peak read traffic.
The correct architecture scales down the primary database instance to a smaller Multi-AZ instance class to handle the steady write workload, and uses cheaper RDS Read Replicas to offload the peak read traffic. This aligns the compute capacity with the actual query demands, leading to significant cost savings compared to maintaining a large db.r6g.4xlarge primary instance that cannot offload reads to its Multi-AZ standby.

Adım Adım Çözüm

1
Analyze the database workload characteristics and the current configuration constraints.
The application has a low write volume (1010 transactions per second) and a spiky read volume (5,0005,000 queries per second). The current db.r6g.4xlarge Multi-AZ instance is oversized and expensive because Multi-AZ standbys cannot serve read traffic.
Identifying that the primary database is oversized for writes and that Multi-AZ does not scale reads is key to optimizing the architecture.
2
Evaluate scale-out options for read traffic and scale-down options for write traffic.
By deploying a smaller db.r6g.large Multi-AZ primary instance, high availability is maintained for the write path at a much lower cost. Adding Read Replicas (which are single-AZ and cheaper) allows scaling the read performance to 5,0005,000 queries per second only when needed.
Separating read scaling from write high-availability requirements is the standard AWS best practice for cost-optimized database design.
3
Identify and eliminate options that violate AWS pricing or architectural rules.
Compute Savings Plans do not cover RDS. Read Replicas do not support automatic failover. Provisioning static high capacity in DynamoDB leads to expensive idle resources.
Eliminating options with architectural misconceptions ensures the chosen solution is correct and feasible.

Anahtar Kavram

Read replicas should be used to offload read traffic from the primary instance, allowing the primary instance to be downsized and reducing overall database costs while maintaining high availability via Multi-AZ.
Tahmini Süre:2m 0s
Bu soruyu puanla