This is the English translation of a talk I gave at the JAX con 2012 (http://www.jax.de/2012).
At Fraunhofer IGD we are using relational databases to store large 3D city models. In the past, we realized that performance of relational databases is not good enough for such kind of data. We were thus seeking for better solutions and we eventually found MongoDB.
However, like most NoSQL databases, MongoDB does not support transactions. So, we implemented the Multiversion Concurrency Control (MVCC) paradigm on top of MongoDB to fill that gap. Our solution works completely lock-free and is almost as fast as plain MongoDB.
This talk gives some details about our application as well as insights into MongoMVCC's implementation. The library is available for free at GitHub: