Globally distributed database-as-a-service (DBaaS) provider Cloudant today announced integration of its CouchDB NoSQL database, known as BigCouch, to the open source Apache CouchDB project.
The merging of BigCouch code into the CouchDB codebase will make it possible to manage and replicate data with CouchDB at a much larger scale.
Cloudant will now stop development of BigCouch but continue to make cluster-scaling and fault-tolerance enhancements within the CouchDB project and will reuse that code in Cloudant’s database service.
The news comes a few months after Cloudant raised $12 million in series B funding from Devonshire Investors, Rackspace Hosting and Toba Capital.
– Adam Kocoloski, co-founder and CTO, Cloudant.
BigCouch, an open source variant of CouchDB, was developed in 2008 by the Cloudant co-founders to support large-scale, globally distributed applications. Horizontal clustering and fault-tolerance framework for BigCouch was inspired by the Amazon Dynamo research paper.
Cloudant engineers imported sections of BigCouch code into the Apache CouchDB repositories for the code merger, and adapted the database to run in a clustered environment and to better replicate databases across clusters and between data centers. They’ve also also refactored internal code, thereby removing complicated sections and boosting overall performance.
Cloudant has also contributed a new compactor process to Apache CouchDB that creates smaller and better-organized post-compaction databases. This will significantly enhance the compaction and replication speed, as well as boosts in high-concurrency access performance for the CouchDB users.
Some other improvements are:
- Better index update speeds.
- Updated aggregate reduce functions.
- BigCouch clustering capability.
- Smooth hot-code updates.
- Improved logging,
- Streamlined libraries.
A preview of the merged software is available now, and a general release of CouchDB with the merged BigCouch functionality is targeted to be available following the Apache community release process.
“There are a lot of reasons people love CouchDB, like its elegant programming model, data durability, flexible indexing, and, most of all, its unique way of replicating and synching data across data centers or devices,” said Adam Kocoloski, co-founder and CTO, Cloudant.
“We’re merging the horizontal scaling and fault-tolerance framework we built for BigCouch into CouchDB so people can more easily scale all that CouchDB goodness across multiple servers and keep it running nonstop. It’s our way of saying thanks and helping to grow the community of CouchDB developers and users,” he added.
“We’re working to integrate BigCouch’s clustering technology with CouchDB — we’ve set the stage and welcome more project committers to get involved,” said Jan Lehnardt, Vice President, Apache CouchDB.
“With Cloudant’s work to fine-tune BigCouch large-scale database replication, Apache CouchDB now has a complete strategy for replicating data across distributed systems, whether nodes are Erlang clusters in the same data center or on the other side of the world. Developers now have more options for moving data closer to their users and a simpler strategy for synchronizing that data throughout a larger system,” he added.
Earlier this year, Cloudant’s distributed database-as-a-service became available on Joyent’s cloud platform.