Originally Written by Eliot Horowitz
Today we are announcing MongoDB 3.0. This release marks the beginning of a new phase in which we build on an increasingly mature foundation to deliver a database so powerful, flexible, and easy to manage that it can be the new DBMS standard for any team, in any industry.
MongoDB 3.0 brings with it massive improvements to performance and scalability, enabled by comprehensive improvements in the storage layer. We have built in the WiredTiger storage engine, an incredible technology with a distinguished pedigree. WiredTiger was engineered with latch-free, non-blocking algorithms to take advantage of trends in modern hardware, like large on-chip caches and heavily threaded architectures. By drawing on both academic research and their extensive commercial experience, the WiredTiger team built a storage engine that can underpin the next 20 years of data storage applications.
With WiredTiger, MongoDB 3.0 introduces document-level concurrency control, so performance remains fast and predictable under concurrent, write-intensive workloads. Transparent on-disk compression reduces storage requirements by up to 80%, and a choice of compression algorithms means that developers can tailor the performance/space trade-off to suit the needs of particular components in their applications.
MongoDB's original storage engine has been enhanced, including collection-level concurrency control and more efficient journaling. Now called MMAPv1, the default storage engine is a binary drop in that provides more efficient and concurrent handling of workloads.
We are currently running the production infrastructure of MongoDB Management Service on MongoDB 3.0 replica sets, mixing both MMAPv1 and WiredTiger storage engines. This type of flexibility is possible because MongoDB 3.0’s pluggable storage engine API addresses the reality that there is no single storage engine perfect for all applications. Through this architecture, MongoDB provides an easy to use, high-level layer for application development, durability, and horizontal scale, while allowing lower-level storage engines to offer solutions engineered for specialized use cases.
The storage engine API means that MongoDB can thrive in any environment, such as in-memory, encrypted, HDFS, or hardware-optimized, to name but a few. In fact, MongoDB can now be used as a laboratory for storage engine development. Delegating higher-level concerns to MongoDB lets storage engine developers focus on their domain of expertise, and lets a massive installation base of MongoDB users take the new engine for a spin just by adding a replica set member.
As with all infrastructure, MongoDB needs to be managed. We know this can be a challenge at large scale, so with MongoDB 3.0, we are giving enterprises Ops Manager, an on-premise product that makes MongoDB a first-class citizen of the mature operations ecosystem. Ops Manager makes routine tasks push-button, eliminating the vast majority of work that operations teams must do to manage MongoDB. It doesn't try to replace existing automation or provisioning tools, rather, it supports and supplements them, so ops can focus on architecture, not plumbing. Ops Manager's API means it can be integrated into existing tooling for monitoring, backup and management.
MongoDB 3.0 is a landmark release. It brings comprehensive improvements in performance, flexibility, ease of management, and cost to operate. MongoDB has always made it fast and easy to iterate -- from prototype to production to maturity, keeping pace in the most agile environments. Taken as a whole, the changes in 3.0 remove bottlenecks and obviate workarounds, suiting MongoDB to an even wider variety of applications, and providing teams the confidence to run it in more mission critical situations. MongoDB 3.0 is a true contender for the title of "default database" in any organization.
This is just the beginning. We will strengthen the case for MongoDB as your default database with every iteration. We will continue to surface advanced features of WiredTiger such as Log Structured Merge Trees. We will continue to push the envelope in data interaction semantics, by implementing a transaction system for the distributed document model. And we will iterate aggressively on Ops Manager, to make sure that operating MongoDB is as effortless as it is to develop with.
MongoDB 3.0 will be generally available in March, when we finish putting it through its paces. Stay tuned for our latest release candidate, we would love it if you would try it out and give us feedback.