MongoDB multi-document ACID transactions are a major new piece of functionality for users. Early releases of the MongoDB database focused on applications without rigorous transactional semantics, as is common in non-tabular, (sometimes aka “NoSQL”) databases. However, some MongoDB users desire advanced transactional features, including multi-document transactions, point-in-time reads, and the choice of snapshot or read-committed isolation.
To better support sophisticated transactional workloads, the MongoDB storage team created a new transactional model in the WiredTiger storage engine, that allows WiredTiger to respect MongoDB’s understanding of transaction ordering and giving MongoDB control over all data visibility.
This talk provides an overview of the ACID properties of transactions and a historic review of transactional support in MongoDB. This talk also explains the timestamp support in WiredTiger, which lays the foundation for the distributed systems components of MongoDB: replication and sharding. At the end of the session, attendees will have a better understanding of the MongoDB transactional architecture. This session is designed for those who want to learn more about the internals of the system.
Mr. Bostic was one of architects of the University of California, Berkeley, 2.10BSD and 4BSD releases, where he lead the 4BSD release Open Source effort. He is the recipient of a USENIX Association Lifetime Achievement Award (The Flame), which recognizes singular contributions to the UNIX community.