Question

Difficulty: MediumHigh-Performing Content Delivery and Caching Solutions

A company operates a smart home IoT platform where millions of devices send status updates to an Amazon DynamoDB table. Users query their device's latest status through a mobile dashboard, leading to high-volume, repetitive read queries on the same partition keys. During peak hours, these queries cause hot partition throttling and increase read latency. The company needs to resolve the performance bottleneck and reduce read response times to microseconds without changing the database query code. Which solution should a solutions architect recommend to meet these requirements?

  1. A
    Modify the DynamoDB table partition keys to use a monotonically increasing timestamp to spread the read operations across multiple partitions.
  2. Deploy an Amazon DynamoDB Accelerator (DAX) cluster and update the application client to route requests to the cluster.Answer
  3. C
    Configure the DynamoDB table to use provisioned capacity mode and manually set a high value for Read Capacity Units (RCUs) to absorb the peaks.
  4. D
    Deploy an Amazon CloudFront distribution in front of DynamoDB and set the cache behavior minimum, maximum, and default TTLs to zero.

Answer

The correct solution is to deploy an Amazon DynamoDB Accelerator (DAX) cluster and update the application client to route requests to the cluster.
Deploying Amazon DynamoDB Accelerator (DAX) provides an in-memory cache that reduces DynamoDB response times to microseconds. Because DAX is API-compatible, the application only needs to update its client initialization rather than its query logic, fulfilling all constraints.

Step-by-Step Solution

1
Identify the performance bottleneck and key requirements: microsecond response times and no changes to database query code.
The target is a caching solution that is transparent/API-compatible with DynamoDB.
We must reduce latency from milliseconds to microseconds without rewriting application query code.
2
Evaluate Amazon DynamoDB Accelerator (DAX) against these requirements.
DAX is an in-memory cache for DynamoDB that requires only a client SDK change, not a query logic rewrite.
DAX meets the API-compatibility and performance requirements directly.
3
Rule out sub-optimal configurations and anti-patterns such as monotonic keys, over-provisioning RCUs, or CloudFront bypass.
Alternative options either worsen the partition heat, increase cost needlessly, or bypass caching entirely.
This confirms DAX as the only correct architectural choice.

Key Concept

Database query caching using Amazon DynamoDB Accelerator (DAX) for sub-millisecond latencies.
Rate this question