BigCouch es una versión de Apache CouchDB de código abierto , altamente disponible, tolerante a fallos , agrupada y compatible con API , que era mantenida por Cloudant . El 5 de enero de 2012, Cloudant anunció que contribuiría con el marco de escalamiento horizontal BigCouch al proyecto CouchDB. [1] La fusión se completó en julio de 2013. [2] Cloudant anunció en junio de 2015 que ya no daría soporte a BigCouch. [3]
BigCouch permite a los usuarios crear clústeres de CouchDB que se distribuyen en una cantidad arbitraria de servidores. Si bien para el usuario final parece una instancia de CouchDB, en realidad se trata de uno o más nodos en un clúster elástico que actúan en conjunto para almacenar y recuperar documentos, indexar y ofrecer vistas y ofrecer aplicaciones CouchApp.
Los clústeres se comportan de acuerdo con los conceptos descritos en el artículo Dynamo de Amazon [4] , es decir, cada nodo puede aceptar solicitudes, los datos se colocan en particiones según un algoritmo de hash consistente y los protocolos de quórum son para operaciones de lectura/escritura. Se basa en Erlang y la Open Telecom Platform , a pesar de utilizar su propio mecanismo RPC sobre el servidor "rex" de OTP. [5]
BigCouch se desarrolló para abordar una queja común planteada por los escépticos de CouchDB: "no escala", es decir, no escala horizontalmente entre muchos servidores. Esta característica es necesaria para que CouchDB se utilice para abordar problemas de Big Data . [6]