Courseiva
Workload-Specific Database DesigneasyMultiple SelectObjective-mapped

Choosing Between Eventually and Strongly Consistent Reads in DynamoDB

A company is designing a highly available e-commerce application using Amazon DynamoDB. The application requires strongly consistent reads for inventory data and eventual consistency for user session data. Which TWO design decisions should the company make?

Quick Answer

The answer is to use strongly consistent reads for inventory data by setting `ConsistentRead=true` on GetItem, Query, or Scan calls, and to implement DynamoDB global tables for user session data to enable low-latency, eventually consistent access across regions. Strongly consistent reads guarantee the most recent write is returned, which is essential for inventory accuracy where stale data could cause overselling, while eventual consistency offers higher throughput and lower latency, making it ideal for session data where slight delays in propagation are acceptable. On the AWS Certified Database Specialty DBS-C01 exam, this question tests your understanding of DynamoDB read consistency trade-offs and global table replication, with a common trap being the assumption that global tables provide strong consistency across regions—they do not, as cross-region replication is always eventually consistent. Remember the memory tip: “Inventory needs the latest, sessions can wait—strong for stock, eventual for state.”

⚠ Common exam trap

Candidates often assume DAX can provide strongly consistent reads because it accelerates read performance, but DAX is an eventually consistent cache and cannot guarantee read-after-write consistency for inventory data.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Use strongly consistent reads for the inventory table by setting ConsistentRead=true in the query.

DynamoDB supports strongly consistent reads by setting the `ConsistentRead=true` parameter in the GetItem, Query, or Scan API calls. This ensures that the application always reads the most recent write, which is critical for inventory data where accuracy is paramount. Strongly consistent reads come at the cost of higher latency and lower throughput compared to eventually consistent reads, but they meet the requirement for inventory consistency.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Enable DynamoDB Streams on the inventory table to replicate data for disaster recovery.

    Why it's wrong here

    Streams are for change data capture, not for strong consistency.

  • Use DynamoDB Accelerator (DAX) for the inventory table to provide strongly consistent reads.

    Why it's wrong here

    DAX provides eventual consistency, not strong consistency.

  • Use a single DynamoDB table for both inventory and session data with different partition keys.

    Why it's wrong here

    Combining different workloads in one table can lead to performance issues and is not a best practice.

  • Use strongly consistent reads for the inventory table by setting ConsistentRead=true in the query.

    Why this is correct

    ConsistentRead=true ensures strongly consistent reads in DynamoDB.

  • Use DynamoDB global tables for the user session data to achieve low-latency access across regions.

    Why this is correct

    Global tables provide multi-region replication with eventual consistency, suitable for session data.

About these practice questions

This DBS-C01 question is part of Courseiva's 1,663-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on DBS-C01

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A gaming company runs a leaderboard application on Amazon DynamoDB. The application experiences sudden spikes in read traffic during tournaments. The table uses on-demand capacity and the reads are eventually consistent. However, some users report stale data for several seconds. What is the most likely cause?

easy
  • A.The application is using eventually consistent reads.
  • B.The table is using on-demand capacity instead of provisioned capacity.
  • C.The table has a global secondary index (GSI) that is not updated synchronously.
  • D.The read capacity units are insufficient for the traffic spikes.

Why A: Eventually consistent reads in DynamoDB can return stale data for up to one second under normal conditions, but during sudden spikes in read traffic, the replication lag can extend to several seconds. The application is using eventually consistent reads, which trade immediate consistency for higher throughput and lower latency, making stale data more likely during high-traffic periods like tournaments.

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DBS-C01 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DBS-C01 exam.