Which solution on AWS will meet these requirements with the LEAST operational overhead?
Deploy an Amazon RDS DB instance with a read replica.
Deploy an Amazon RDS Multi-AZ DB instance.
Deploy Amazon DynamoDB global tables.
Deploy multiple Amazon RDS DB instances. Use Amazon Route 53 DNS with failover health checks configured.
Explanations:
While a read replica can help with read scalability, it does not provide automatic failover or high availability. It also requires manual promotion of the replica in case of failure, which increases operational overhead.
Amazon RDS Multi-AZ provides high availability with automatic failover, ensuring that the database is available during instance failure. This solution offers the least operational overhead as it is fully managed by AWS.
Amazon DynamoDB is a NoSQL database, which does not support SQL-based operations like joins or indexes as used in MySQL. This makes it unsuitable for a MySQL-based application.
Using multiple RDS instances and Route 53 for failover introduces additional complexity and operational overhead for managing DNS and health checks. This is less efficient than a fully managed Multi-AZ deployment.