To answer one of the questions in the post: I do believe that MongoDB's transactions will only be used in some applications, and only in few but critical places within those applications. That is because with a document database, data that belongs together will often already be together in the same document, rather than distributed over multiple tables as with a traditional database. And if it's together in the same document, you can already modify that atomically in MongoDB without multi-document transactions. (Disclosure: I work for MongoDB.)