TalksAWS re:Invent 2025 - Multi-Region strong consistency with Amazon DynamoDB global tables (DAT440)
AWS re:Invent 2025 - Multi-Region strong consistency with Amazon DynamoDB global tables (DAT440)
Summary of AWS re:Invent 2025 - Multi-Region Strong Consistency with Amazon DynamoDB Global Tables
Introduction to Multi-Region Architectures
Customers are building distributed applications that require data to be close to end-users across multiple regions
This is driven by needs for low latency, compliance, and high availability
Traditional single-region databases struggle with the challenges of multi-region replication
DynamoDB Global Tables
DynamoDB Global Tables was created to support multi-region architectures
Provides two replication models: Asynchronous and Strongly Consistent (Mercy)
Each model has different trade-offs around performance, consistency, and failure handling
Asynchronous Global Tables
Provides low-latency, predictable performance for writes
Uses asynchronous replication to propagate writes to other regions
Ensures monotonic reads on a per-item basis, but not across items
Resolves write conflicts using last-writer-wins based on timestamps
Handles regional failures and network partitions well, with data remaining available
Asynchronous Replication Process
Writes are first durably recorded in the local region
A replicator then propagates the write to other regions asynchronously
Each region has its own replicator to maintain independence between failure domains
Replication is monotonic per-item, but not guaranteed across items
Failure Modes
If a region is completely isolated, it can still serve reads and writes locally
During a network partition, regions can continue operating independently, with data converging when connectivity is restored
Streams notifications only reflect writes that were actually applied, not replicated writes
Strongly Consistent (Mercy) Global Tables
Provides strongly consistent reads from any region
Writes are serialized across regions using a multi-region journal
Ensures all writes are visible in the same order across all regions
Write Process
Write requests are forwarded to a replication engine that generates a log entry and appends it to the multi-region journal
The journal then notifies all regions to apply the log entry
The region where the write originated returns success once the log entry is applied
Read Process
Strongly consistent reads wait for a "read fence" log entry to be applied, ensuring all prior writes are visible
This ensures serializable reads across regions
Failure Modes
If a region is isolated, it cannot serve writes or strongly consistent reads until connectivity is restored
During a network partition between regions, the isolated regions can still serve reads and writes, but with higher latency due to the longer replication path
Key Takeaways
Asynchronous Global Tables provide high-performance, eventually consistent replication
Strongly Consistent (Mercy) Global Tables offer serializable reads and writes across regions, with higher latency
Customers should carefully consider their application's consistency, availability, and latency requirements when choosing between the two models
Extensive testing, including chaos and scale testing, is crucial to ensure resilience in multi-region failure scenarios
Technical Details
DynamoDB stores 3 copies of data in 3 availability zones within a region
Replication is unidirectional between regions, with a dedicated replicator per region pair
Conflict resolution uses last-writer-wins based on timestamps
Strongly Consistent Global Tables use a multi-region journal to serialize writes
Strongly Consistent reads wait for a "read fence" log entry to ensure all prior writes are visible
Business Impact
Multi-region architectures enabled by DynamoDB Global Tables allow customers to build highly available, low-latency applications that serve users globally
The choice between Asynchronous and Strongly Consistent replication models allows customers to optimize for their specific performance, consistency, and availability requirements
Robust failure handling and testing ensures applications can withstand regional outages and network partitions, providing high business continuity
Examples
Customers can use Asynchronous Global Tables to build applications with fast, predictable performance, even during regional failures
Strongly Consistent Global Tables enable applications that require serializable reads and writes across regions, such as financial systems or healthcare applications
The ability to choose between replication models allows customers to find the right balance between consistency, availability, and latency for their specific use cases
These cookies are used to collect information about how you interact with this website and allow us to remember you. We use this information to improve and customize your browsing experience, as well as for analytics.
If you decline, your information won’t be tracked when you visit this website. A single cookie will be used in your browser to remember your preference.