Today, we are announcing our acquisition of WiredTiger, an open source, high-performance storage engine company co-founded and led by world-renowned experts Keith Bostic and Dr. Michael Cahill. Keith is a co-founder of Sleepycat Software, where he and Michael both architected Berkeley DB, “the most widely used database toolkit in the world, with hundreds of millions of deployed copies running in everything from routers and browsers to mailers and operating systems.” [1]
We posted previously about the inclusion of WiredTiger in the upcoming 2.8 release of MongoDB, and how it will enable users to achieve great concurrency, better utilize the resources of their hardware, improve storage efficiency, and see much better performance under write-intensive workloads. If all we wanted was a great storage engine, we could have stopped there. But WiredTiger is more than great technology, it's also great people. Working together on the integration of WiredTiger and our pluggable storage engine API (another banner feature of MongoDB 2.8), we discovered how aligned we are on mission, vision, and philosophy. It wasn’t long before we realized -- WiredTiger wasn’t just a product we admired, it was a group of people who embody everything we value in our team. I can illustrate how this happened with an anecdote from early on in our association.
We first met the WiredTiger team while we were still seeking out a preliminary set of storage engines to pilot the pluggable storage engine API. At this point we were still developing the API, and thinking about the types of storage engines that we want to make available to users. We wanted a flagship engine, one that could offer our users advanced features and performance improvements for write-heavy workloads. It was during this time that we started getting questions from the WiredTiger team about the storage engine API… for the integration that they had already largely built!
When we saw what great work the WiredTiger team did on the MongoDB codebase, we knew right away that they were the kind of engineers we'd love to work with. We went up to Boston for an integration summit.
Working closely with the WiredTiger team didn’t just reinforce our impressions, it sealed them. In our first, 4 hour long, in-person meeting, we saw eye to eye on every key issue. Communication was easy, we agreed on priorities, and we learned first hand that they are at least as passionate about open source software as we are. As a matter of fact, Keith is legitimately a pioneer of open source software, having led the effort to produce the first complete, freely available BSD Unix -- 4.4BSD-Lite. This pioneering carried on as Keith and Michael developed Berkeley DB as free software at Sleepycat. While these bona fides speak for themselves, our in-person interactions underscored them in a profound way.
The WiredTiger team was equally enthusiastic about working with MongoDB, it turned out.
To sum up: Keith and Michael are both luminaries in the fields of data storage and transaction management, and they and the entire WiredTiger team are on exactly the same page as we are. They are true paragons of the free software movement, and on their team, 15 year’s experience in the field makes you a relative newcomer. As much as the synergy was obvious from the standpoint of complementary technologies, it was even more obvious from a team composition standpoint.
Following the acquisition, WiredTiger will live on as its own project, under active development, and we will drive towards making it the default storage engine for MongoDB 3.0. For those that want to adopt WiredTiger under 2.8, there is a no-downtime migration path. As for MMAPv1, it will continue to see active development and support, even after WiredTiger becomes the default. It will become one of a wide array of options made possible by our pluggable API, and for certain workloads, it will be the best choice.
The WiredTiger storage engine is available today in the latest release candidate for MongoDB 2.8. Have a look at the release notes, which contain instructions for upgrading, as well as for migrating to the WiredTiger storage engine. As we fine-tune the release, we are encouraging members of the community to test the RC through our Bug Hunt, offering prizes to those that identify critical issues. As of this announcement, we’re extending the hunt through the holidays! If you’re ready to test out just how amazing our new storage engine is, we’d love to have your feedback on how it works for your application.
[1] Bostic, Keith, and Margo Seltzer. "Berkeley DB." Ed. Amy Brown and Greg Wilson. The Architecture of Open Source Applications.