AWS Certified Developer – Associate (DVA-C02)Development with AWS ServicesHard

A developer is building a highly available e-commerce application that needs to store product catalog data. This data is frequently read but updated infrequently. The application requires very low read latency (single-digit milliseconds) and must be able to scale to millions of reads per second. Data consistency is eventually consistent, which is acceptable for product catalog data. Which AWS service is the most cost-effective and performant solution for this use case?

  1. AAmazon RDS for MySQL with a read replica.
  2. BAmazon DynamoDB with DynamoDB Accelerator (DAX).
  3. CAmazon ElastiCache for Redis in front of Amazon RDS.
  4. DAmazon OpenSearch Service.
Show answer & explanation

Correct answer: B. Amazon DynamoDB with DynamoDB Accelerator (DAX).

DynamoDB is excellent for high-volume, low-latency reads, and DAX provides an in-memory cache specifically for DynamoDB, reducing read latency to microseconds and significantly offloading the database for frequently accessed, eventually consistent data. This combination offers superior performance and cost-effectiveness for this specific access pattern compared to other options.

Why the other options are wrong

  • A. RDS with read replicas offers scalability for reads but typically has higher read latency than DynamoDB + DAX for single-digit millisecond requirements at massive scale, and can be more complex to manage at that scale.
  • C. ElastiCache is a general-purpose caching solution. While effective, integrating it with RDS for this scale can be more complex to manage and potentially less performant than the purpose-built DAX for DynamoDB, especially when considering the 'cost-effective' aspect for millions of reads.
  • D. Amazon OpenSearch Service (formerly Elasticsearch) is primarily for search and analytics, not for direct, low-latency key-value data retrieval for a product catalog, and would be overkill and less cost-effective for this specific access pattern.

DynamoDB Accelerator (DAX)

A fully managed, highly available, in-memory cache for Amazon DynamoDB that delivers up to a 10x performance improvement for read-heavy workloads.

  • Reduces read latency from milliseconds to microseconds.
  • Compatible with existing DynamoDB API calls.
  • Automatically scales to meet demand.

Memory trick: DAX gives DynamoDB a speed boost for rapid reads.

More Development with AWS Services questions