MongoDB: Building a New Transactional Model
Presented by MongoDB's Keith Bostic at MongoDB World 2018. MongoDB 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 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 has created a new transactional model in the WiredTiger storage engine, allowing WiredTiger to respect MongoDB's understanding of transaction ordering and giving MongoDB control over all data visibility. This talk will provide an overview of the ACID properties of transactions and a historic review of transactional support in MongoDB. This talk will also explain 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, audience members 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.