AWS Certified Solutions Architect – Professional — Question 649
A gaming company created a game leaderboard by using a Multi-AZ deployment of an Amazon RDS database. The number of users is growing, and the queries to get individual player rankings are getting slower over time. The company expects a surge in users for an upcoming version and wants to optimize the design for scalability and performance.
Which solution will meet these requirements?
Answer options
- A. Migrate the database to Amazon DynamoDB. Store the leaderboard data in two different tables. Use Apache HiveQL JOIN statements to build the leaderboard.
- B. Keep the leaderboard data in the RDS DB instance. Provision a Multi-AZ deployment of an Amazon ElastiCache for Redis cluster.
- C. Stream the leaderboard data by using Amazon Kinesis Data Firehose with an Amazon S3 bucket as the destination. Query the S3 bucket by using Amazon Athena for the leaderboard.
- D. Add a read-only replica to the RDS DB instance. Add an RDS Proxy database proxy.
Correct answer: B
Explanation
Amazon ElastiCache for Redis is an in-memory data store that is highly optimized for real-time, low-latency use cases like game leaderboards through features like Sorted Sets. By offloading leaderboard queries from Amazon RDS to an ElastiCache cluster, the system can scale to handle massive traffic spikes with sub-millisecond response times. Other alternatives, such as querying S3 via Athena or joining DynamoDB tables via HiveQL, are too slow for real-time gaming requirements.