BigCouch | |
Discontinued: | yes |
Programming Language: | Erlang |
Operating System: | Cross-platform |
Latest Preview Version: | 0.4.2b |
Language: | English |
Genre: | Document-oriented database |
License: | Apache License 2.0 |
Website: | http://bigcouch.cloudant.com/ |
BigCouch is an open-source, highly available, fault-tolerant, clustered & API-compliant version of Apache CouchDB, which was maintained by Cloudant. On January 5, 2012, Cloudant announced they would contribute the BigCouch horizontal scaling framework into the CouchDB project.[1] The merge was completed in July 2013.[2] Cloudant announced in June 2015 that they were no longer supporting BigCouch.[3]
BigCouch allows users to create clusters of CouchDBs that are distributed over an arbitrary number of servers. While it appears to the end-user as one CouchDB instance, it is in fact one or more nodes in an elastic cluster, acting in concert to store and retrieve documents, index and serve views, and serve CouchApps.
Clusters behave according to concepts outlined in Amazon's Dynamo paper,[4] namely that each node can accept requests, data is placed on partitions based on a consistent hashing algorithm, and quorum protocols are for read/write operations. It relies on Erlang and the Open Telecom Platform, despite using its own RPC mechanism over OTP's own "rex" server.[5]
BigCouch was developed to address a common complaint raised by CouchDB skeptics is that "it doesn't scale," by which they mean it does not scale horizontally across many servers. This feature is necessary for CouchDB is to be used to address Big Data problems.[6]