Q32 — AWS SAA-C03 Ch.16
Question 32 of 100 | ← Chapter 16
Q1232. A company is running an on-premises application comprised of a web tier, an application tier,and a MySQL database tier. The database is used primarily during business hours with random activity peaks throughout the day. A solutions architect needs to improve the availability and reduce the cost of the MySQL database tier as part of the company's migration to AWS.Which MySQL database option would meet these requirements?
- A. Amazon RDS for MySQL with Multi-AZ
- B. Amazon Aurora Serverless MySQL cluster ✓
- C. Amazon Aurora MySQL cluster
- D. Amazon RDS for MySQL with read replica
Correct Answer: B. Amazon Aurora Serverless MySQL cluster
Explanation
To meet the requirements of improving availability and reducing the cost of the MySQL database tier as part of the company's migration to AWS, let's analyze the options:Key Requirements:Improve Availability: The solution should enhance the database's availability to handle business hours and random activity peaks.Reduce Cost: The solution should be cost-effective, especially considering the database is used primarily during business hours with occasional peaks.Solution Analysis:Amazon RDS for MySQL with Multi-AZ:Availability: Provides high availability by synchronously replicating data to a standby instance in a different Availability Zone (AZ).Cost: More expensive than single-AZ deployments because you are paying for two instances (primary and standby).Use Case: Best for high availability but not necessarily cost-effective for a database with variable usage (since you pay for the standby instance 24/7).Amazon Aurora Serverless MySQL Cluster:Availability: Aurora Serverless automatically scales compute capacity up and down based on demand, ensuring high availability without manual intervention.Cost: Cost-effective for variable workloads because you only pay for the compute capacity you use. It automatically pauses when idle (after a configurable period) and resumes when needed. Use Case: Ideal for databases with unpredictable or intermittent workloads, as it scales and costs based on actual usage.Amazon Aurora MySQL Cluster:Availability: Provides high availability with synchronous replication across multiple AZs. Cost: More expensive than Aurora Serverless because you must provision and pay for the capacity upfront (even if it's not fully utilized).Use Case: Best for predictable workloads where you can size the cluster appropriately to handle peak loads without over-provisioning.Amazon RDS for MySQL with Read Replica:Availability: Read replicas improve read scalability and can be used for failover, but they do not provide the same level of high availability as Multi-AZ or Aurora.Cost: Cheaper than Multi-AZ but still requires provisioning and paying for the replica instances. Use Case: Best for read-heavy workloads where you can offload reads to replicas, but it does not address the cost-efficiency of variable workloads as well as Aurora Serverless.Evaluating the Options:Option A: Amazon RDS for MySQL with Multi-AZIncorrect: While it improves availability, it is not the most cost-effective solution for a database with variable usage.Option B: Amazon Aurora Serverless MySQL clusterCorrect: This option provides high availability and automatically scales compute capacity based on demand, making it cost-effective for a database with variable usage during business hours and random peaks.Option C: Amazon Aurora MySQL clusterIncorrect: While it improves availability, it is not as cost-effective as Aurora Serverless for variable workloads because you must provision and pay for the capacity upfront.Option D: Amazon RDS for MySQL with read replicaIncorrect: While it can improve read scalability, it does not address the cost-efficiency of variable workloads as well as Aurora Serverless, and it does not provide the same level of high availability as Multi-AZ or Aurora.Final Answer:B. Amazon Aurora Serverless MySQL clusterThis option meets the requirements by providing high availability and automatically scaling compute capacity based on demand, making it cost-effective for a database with variable usage during business hours and random activity peaks.