Distributed Transactions at Scale in Amazon DynamoDB
summary
Explains how DynamoDB adds full ACID transactions by implementing timestamp ordering with a fleet of transaction coordinators, a durable ledger checkpointing table for prepare/commit state, and two APIs: TransactGetItems and TransactWriteItems (plus a CheckItem op). Protocol uses prepare/commit across partitions, assigns timestamps, and rejects conflicting timestamps; production shows linear scalability to ~1M ops/s with P99 latency rising only ~2 ms and no measurable impact on non-transactional latency.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 1:04Why transactions matter
- 3:12Benefits in e-commerce
- 6:21Design principles
- 8:48New transaction APIs
- 11:57Non-transactional operations
- 13:19Transaction architecture
- 15:08Fault tolerance
- 16:10Serializability with timestamps
- 17:32Transact Get Items protocol
- 18:34Handling clock drift
- 20:03Timestamp rules
- 21:50Impact on workloads
- 22:11Performance metrics
- 23:15Conclusion and key takeaways
related talks
01h 08mTransactions and Scalability in Cloud Databases—Can’t We Have Both?
30mBuild for Scale, Performance With Feature-packed Amazon DynamoDB
20mAmazon DynamoDB: A Scalable, Predictably Performant, and Fully Managed NoSQL...
01h 00mDistributed transactions implementation trade-offs
37mDynamoDB in an EDA World
47mBeing transactional in 2019 - what does this actually mean?
28mPractical Approaches To Scaling Distributed Transactions
40mDistributed Commit Log: Application Techniques for Transaction Processing
