AWS Certified Solutions Architect - Professional / Question #1012 of 529

Question #1012

A company is migrating their Redis-based application to AWS and requires a highly available solution that supports automatic failover, data persistence, and Multi-AZ redundancy. The solution must minimize operational overhead and ensure compatibility with existing Redis client libraries. Which configuration should they implement?

A

Deploy Amazon ElastiCache for Redis with Multi-AZ enabled and automatic backups. Use the primary endpoint for writes and read replicas for reads.

B

Create an Amazon RDS for PostgreSQL database with read replicas. Configure writes to the writer endpoint and reads to the reader endpoint.

C

Create an Amazon MemoryDB for Redis cluster in Multi-AZ mode. Configure the application to interact with the cluster endpoints.

D

Set up Redis on Amazon EC2 instances distributed across multiple Availability Zones. Implement custom failover scripts and daily backups to Amazon S3.

Explanation

Answer C is correct because Amazon MemoryDB for Redis provides built-in Multi-AZ redundancy, automatic failover, and data persistence through its durable transaction log, ensuring high availability and compatibility with Redis client libraries. It is a fully managed service, minimizing operational overhead.

Why other options are incorrect:
- A: ElastiCache for Redis requires manual configuration for data persistence (snapshots) and may not guarantee the same durability as MemoryDB.
- B: RDS for PostgreSQL is incompatible with Redis client libraries.
- D: EC2-based Redis requires manual setup for failover, backups, and Multi-AZ, increasing operational complexity.

Key Points:
1. MemoryDB ensures Redis compatibility and high durability.
2. Multi-AZ and automatic failover are native features of MemoryDB.
3. Managed services reduce operational effort compared to self-hosted solutions.

Answer

The correct answer is: C