Couchbase Server es una base de datos de documentos JSON, NoSQL , multimodelo , distribuida y de código abierto que está mejorada para aplicaciones interactivas. También se conoce como Membase. Fue desarrollado por Couchbase, Inc. y lanzado inicialmente en agosto de 2010.
Está escrito usando lenguajes C++ , Erlang, C , Go . Su servidor está diseñado para proporcionarnos acceso a documentos JSON o clave-valor fácil de escalar con un alto rendimiento sostenido y baja latencia. Estas aplicaciones pueden ayudar a servir a muchos usuarios almacenando, creando, agregando, recuperando, manipulando y presentando datos. Está diseñado para recopilarse desde una sola máquina hasta implementaciones a gran escala que abarcan muchas máquinas.
Historia de Couchbase:
varios líderes del proyecto Memcached ampliaron Couchbase para desarrollar una tienda de valores clave con la simplicidad, la velocidad y la escalabilidad de Memcached. NorthScale contribuyó con el código fuente original de membase y los copatrocinadores del proyecto, Zynga y Naver Corporation, contribuyeron con un nuevo proyecto en membase.org en junio de 2010.
Los fundadores del proyecto Membase y Membase, Inc. anunciaron una fusión con CouchOne el 8 de febrero de 2011, con una fusión de proyecto asociada. La empresa fusionada se llamó Couchbase, Inc. en enero de 2012. Couchbase lanzó Couchbase Server 1.8. Orbitz cambió algunos de sus sistemas para usar Couchbase en septiembre de 2012. Couchbase Server 2.0 (anunciado en julio de 2011) se lanzó en diciembre de 2012. Incluía un nuevo almacén de documentos JSON, MapReduce incremental, indexación y consulta, y replicación entre centros de datos.
Características de la base de sofá:
- Es una base de datos NoSQL de código abierto que nos proporciona un mecanismo de almacenamiento y recuperación de datos que se modela en medios distintos a las relaciones tabulares utilizadas en las bases de datos relacionales.
- Es útil ya que está optimizado para aplicaciones interactivas.
- Tiene esquema de datos sin esquema.
- Tiene múltiples rutas de acceso a datos para consultar y administrar nuestros documentos JSON.
- Tiene rutas de acceso a datos flexibles que lo hacen más útil para una amplia variedad de aplicaciones y casos de uso.
- Es compatible con el lenguaje de consulta declarativo (N1QL) que extiende ANSI SQL a JSON.
- Proporciona métodos de coherencia eventual y coherencia inmediata para garantizar la coherencia en un sistema distribuido.
- No proporciona el concepto de Integridad Referencial. Por lo tanto, no hay claves foráneas.
- Soporta los métodos Map-Reduce.
- Tiene tipos de datos predefinidos como booleano, string, número, etc.
- El modelo de base de datos principal para Couchbase es Document Store.
- El modelo de base de datos secundario para Couchbase es Key-Value Store.
- Es compatible con el formato de datos XML.
- En Couchbase, la partición se puede realizar mediante Sharding.
- Es compatible con los métodos de replicación Master-Slave Replication y Master-Master Replication.
- Tiene capacidades en memoria.
- Proporciona conceptos de transacciones ACID .
- También admite índices secundarios sin ninguna restricción.
- Tiene funciones y temporizadores en JavaScript para scripts del lado del servidor.
- Utiliza Linux, OS X y Windows como sus sistemas operativos de servidor.
- Es utilizado por algunas empresas como The Doyle Group, Lockwood Publishing, Code Weavers, MSLGROUP, etc.