CouchDB Adds Live Shard Splitting
Written by Kay Ewbank   
Monday, 02 March 2020

There's a major new release of Apache CouchDB, with improvements including live shard splitting, user-defined partitioned databases for faster querying, and an automatic view index warmer.

Apache CouchDB is an open source NoSQL document database that stores data in a schema-free JSON format. CouchDB uses its own replication protocol to keep JSON documents synchronized. CouchDB was originally developed by Damien Katz, and was then adopted as a successful Apache project. CouchDB comes with a developer-friendly query language, and optionally MapReduce for simple, efficient, and comprehensive data retrieval.

While CouchDB 3 has just been released, some of the changes to this version are in preparation for CouchDB 4, when the developers say they are going to take the tried and trusted underpinnings of CouchDB: the append-only B+-tree storage engine and the dynamo clustering layer, and are going to replace it with FoundationDB. 


 The improvements to the new release start with support for live shard splitting. Databases can now be re-sharded while online, and the feature can be configured to require specific node and range parameters upon execution.

You can also set up user-defined partitioned databases for faster querying. Databases defined like this support user-driven placement of documents into the same shard range. JavaScript views and Mango indexes have specific optimizations for partitioned databases as well.

An automatic view index warmer has been added. This carries out automatic indexing in the background to keep secondary indexes such as JavaScript, Mango, and text search up to date, without requiring an external query to trigger building them.

The automatic compaction daemon, internally known as smoosh, has been completely rewritten. This subsystem automatically triggers background compaction jobs for both databases and views, based on configurable thresholds.

Other improvements include a change to use the modern JavaScript engine SpiderMonkey 60, and official support for ARM and PPC 32bit and 64bit systems.

CouchDB 3 is available for download now. Pre-built packages for Windows, macOS, Debian/Ubuntu and RHEL/CentOS are available. Docker images have been submitted to Docker Hub for review and will be available as soon as that  process is done. 



More Information

CouchDB Download

Related Articles

Couchbase Launches JSON Analytics

Couchbase Mobile Version Adds Sync Gateway

Couchbase Server 4.0 Now With N1QL

What Happens To Couchbase Now?

Couchbase Server 2.0

UnQL is SQL for NoSQL - new language, new Couchbase 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, Facebook or Linkedin.


New To Perl? What Do You Need? The Results

The results and analysis of a recent survey into what help and guidance Perl beginners would find useful revealed that learning Perl can be a lifelong challenge and that more step-by-step tutorial mig [ ... ]

Amazon Amplify Adds Flutter And Vue Support

Amazon Amplify, the open source library for interacting with cloud services that use JavaScript applications, now has support for Flutter and Vue 3.

More News

{laodposition comment}