|MongoDB 4.0 Gets Multi-Doc ACID Support|
|Written by Kay Ewbank|
|Tuesday, 20 February 2018|
The next release of MongoDB will finally have support for multi-document ACID transactions, and there's a beta version available now with the new technology.
MongoDB is a popular document database that has some support for ACID transactions at the document level, but until now not for multi-document transactions. The forthcoming MongoDB 4.0 will add support for multi-document transactions to provide a globally consistent view of data. The developers say that multi-document transactions will feel just like the transactions in relational databases. They'll be multi-statement, use start_transaction and commit_transaction statements, and will initially work across a single replica set. MongoDB 4.2 will add support for transactions across a sharded deployment.
Writing about the new features in a blog post, Eliot Horowitz, CTO and Co-Founder of MongoDB, said:
"The changes to MongoDB that enable multi-document transactions will not impact performance for workloads that do not require them."
This makes it fairly clear that using the transactional support will slow down those applications that use it. It's not clear what percentage of users will actually need or use the new facility, as it was already possible to carry out atomic single-document operations. However, the fact the support will be there may well make some companies consider MongoDB where they would previously not have done so.
The new transactional support has been achieved by a major re-engineering of MongoDB to make use of the WiredTiger storage engine that MongoDB acquired when they acquired WiredTiger three years ago. Horowitz said in the blog post:
"We’ve laid the groundwork in almost every part of the server – from the storage layer itself, to the replication consensus protocol, to the sharding architecture. We’ve built out fine-grained consistency and durability guarantees, introduced a global logical clock, refactored cluster metadata management, and more. We’ve also exposed all of these enhancements through APIs that are fully consumable by our drivers."
The support for transactions is described as being about 85 percent there in terms of the features that enable transactions. In practical terms, MongoDB 4 supports recovery to a timestamp, and work is in progress on storage support on prepared transactions; replica-set point-in-time reads; and recoverable rollback via WiredTiger checkpoints.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Wednesday, 21 February 2018 )|