Resolving Stale Data in Amazon DynamoDB

SAA-C03 By islever Editorial Last updated

Short answer

C Request strongly consistent reads for the table.

Question

A company has an application that uses an Amazon DynamoDB table for storage. A solutions architect discovers that many requests to the table are not returning the latest data. The company's users have not reported any other issues with database performance. Latency is in an acceptable range. Which design change should the solutions architect recommend?
  1. Add read replicas to the table.
  2. Use a global secondary index (GSI).
  3. Request strongly consistent reads for the table. Correct Answer
  4. Request eventually consistent reads for the table.

Key Takeaways

The core concept is DynamoDB's read consistency models; the trap is confusing this with replication or indexing features which do not solve staleness.

This question addresses how to ensure users see the most recent data in Amazon DynamoDB by switching from eventual consistency to strongly consistent reads.

Common mistake: Many candidates might consider adding read replicas or using Global Secondary Indexes (GSI), but these are for scaling and querying flexibility, not for ensuring immediate data freshness.

Expert Analysis

Why the Answer Is Correct

Amazon DynamoDB uses an eventually consistent model by default for read operations. This means that after a write operation completes, it may take some time for the updated data to propagate across all storage nodes. Consequently, subsequent reads might return stale data that does not reflect the most recent write. To guarantee that a read operation returns the result of the most recent write, the solutions architect must request strongly consistent reads. This option ensures that the response reflects all writes that received a successful response prior to the read.

Why the Other Options Are Wrong

Option A (Add read replicas) is incorrect because DynamoDB tables are automatically replicated across multiple Availability Zones; you do not manually add read replicas to fix consistency issues. Option B (Use a GSI) is incorrect because Global Secondary Indexes are designed for flexible querying patterns, not for controlling read consistency latency. Option D (Request eventually consistent reads) is the default behavior and is the cause of the problem, not the solution.

Community Comment Notes

The community consensus strongly supports Option C. As user alawada noted, "DynamoDB by default provides eventual consistency... To ensure that read operations return the latest data... the solution is strongly consistent reads." Another commenter, BillaRanga, confirmed that both tables and indexes offer two consistency options, and eventually consistent reads may not reflect recently completed writes.

Exam Strategy

Always distinguish between performance/scaling requirements and consistency requirements. If the question mentions 'latest data' or 'stale data', think Strongly Consistent Reads. If it mentions 'high throughput' or 'low cost' at the expense of slight delay, think Eventually Consistent Reads.

Frequently Asked Questions

Does strongly consistent read increase latency?

Yes, strongly consistent reads may have slightly higher latency than eventually consistent reads because they gather data from all replicas before responding.

Can I use GSI for strongly consistent reads?

No, GSIs only support eventually consistent reads. You cannot request strong consistency on a Global Secondary Index.

More SAA-C03 FAQ →

Community Votes

C
100%

100% of anonymous learners picked answer C. Votes are pick records left by other test-takers — they are not the verified answer.

Discussion 3 contributions

Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.

From public community threads 3

  1. alawada 👍 6 Answered C
    DynamoDB by default provides eventual consistency for read operations, which means that a query may not reflect the most recent data changes immediately after an update. Instead, it may take some time for the data to propagate across all replicas in the DynamoDB global table. To ensure that read operations return the latest data and address the issue of stale data being returned to users, the solutions architect should recommend switching the read consistency level from eventually consistent reads to strongly consistent reads.
  2. BillaRanga 👍 4 Answered C
    Both tables and LSIs provide two read consistency options: eventually consistent (default) and strongly consistent reads. 1) Eventually Consistent Reads Eventually consistent is the default read consistent model for all read operations. When issuing eventually consistent reads to a DynamoDB table or an index, the responses may not reflect the results of a recently completed write operation. If you repeat your read request after a short time, the response should eventually return the more recent item.
  3. Andy_09 👍 4
    Option C

Reader comments & corrections

No reader corrections yet — spotted an error or have a note? Share it below.

Log in to comment, report an error, or add a note about this question.

Submitted for moderation before publishing. Keep it helpful and respectful.

Practice All SAA-C03 Questions

Access 120 questions with complete answers and detailed explanations.

View Full SAA-C03 Practice Test →

← Back to SAA-C03 Study Guide