ExamGecko
Question list
Search
Search

List of questions

Search

Related questions











Question 137 - DOP-C01 discussion

Report
Export

You are creating a new API for video game scores. Reads are 100 times more common than writes, and the top 1% of scores are read 100 times more frequently than the rest of the scores. What's the best design for this system, using DynamoDB?

A.
DynamoDB table with 100x higher read than write throughput, with CloudFront caching.
Answers
A.
DynamoDB table with 100x higher read than write throughput, with CloudFront caching.
B.
DynamoDB table with roughly equal read and write throughput, with CloudFront caching.
Answers
B.
DynamoDB table with roughly equal read and write throughput, with CloudFront caching.
C.
DynamoDB table with 100x higher read than write throughput, with ElastiCache caching.
Answers
C.
DynamoDB table with 100x higher read than write throughput, with ElastiCache caching.
D.
DynamoDB table with roughly equal read and write throughput, with ElastiCache caching.
Answers
D.
DynamoDB table with roughly equal read and write throughput, with ElastiCache caching.
Suggested answer: D

Explanation:

Because the 100x read ratio is mostly driven by a small subset, with caching, only a roughly equal number of reads to writes will miss the cache, since the supermajority will hit the top 1% scores. Knowing we need to set the values roughly equal when using caching, we select AWS ElastiCache, because CloudFront cannot directly cache DynamoDB queries, and ElastiCache is an excellent in-memory cache for database queries, rather than a distributed proxy cache for content delivery.

... One solution would be to cache these reads at the application layer. Caching is a technique that is used in many highthroughput applications, offloading read activity on hot items to the cache rather than to the database. Your application can cache the most popular items in memory, or use a product such as ElastiCache to do the same.

Reference:

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bestpractices.html#%20Guideli%20nesForTables.CachePopularItem

asked 16/09/2024
Vasco Ricardo Ribeiro
30 questions
User
Your answer:
0 comments
Sorted by

Leave a comment first