Anar al contingut

Servidor de CouchBase

De L'Enciclopèdia, la wikipedia en valencià
Servidor de CouchBase

Servidor de Couchbase, originalment conegut com Membase, és un proyecte de còdic obert, un paquet de software distribuït (de l'anglés arquitectura shared-nothing) multi-model orientat a base de senyes documental i que està optimisat per a aplicacions interactives. Estes aplicacions poden servir a molts usuaris al mateix temps per mig de la creació, almagasenament, recuperació, agregació, manipulació i presentació de senyes. Per a soportar este tipo de necessitats, Couchbase Server està dissenyat per a proporcionar accés a documents de valor-clau (de l'anglés key - value documents) o documents JSON de fàcil escala, en baixa latencia i alt rendiment sostingut. Està dissenyat per a ser agrupat a partir d'una sola màquina a gran escala que comprén moltes màquines (clúster).

El Servidor de Couchbase proporciona compatibilitat en el protocol de client memcached,[1] agregant persistència de disc, replicació de senyes, reconfiguración del clúster en viu, reequilibrio i multiusuario en partició de senyes.

Història del producte

[editar | editar còdic]

Membase va ser desenrollat per varis dirigents del proyecte memcached, que havien fundat la companyia, NorthScale, per a desenrollar un almagasén de senyes claus-valor en la simplicitat, velocitat i escalabilidad de memcached, pero que també proporcionara l'almagasenament, la persistència i les capacitats de consulta d'una base de senyes. El còdic font Membase original va ser aportat per NorthScale, i pels copatrocinadores de Zynga i Naver (llavors conegut com NHN) a un nou proyecte sobre membase.org en juny de 2010.[2]

El 8 de febrer de 2011, els fundadors del proyecte Membase i Membase, Inc. varen anunciar una fusió en CouchOne (una empresa en moltes de les principals figures darrere de CouchDB) en una mescla de proyecte associat. L'empresa fusionada va ser cridada Couchbase, Inc. En giner de 2012, Couchbase va llançar Couchbase Server 1.8. En setembre de 2012, Orbitz va dir que va traslladar alguns dels seus sistemes a utilisar Couchbase.[3] En decembre de 2012, Couchbase Server 2.0 (anunciat en juliol de 2011 i llançat el 12 de decembre), va incloure un nou almagasén de documents JSON, indexación i consulta, MapReduce incremental i replicació a través dels centres de senyess.[4][5]

Arquitectura

[editar | editar còdic]

Cada nodo de Couchbase consta d'un servici de senyes, servici d'índex, servici de consulta i component d'administrador de clúster. A partir de la versió 4.0, els tres servicis es poden distribuir per a eixecutar-se en nodos separats del clúster si és necessari.

En térmens del teorema CAP d'Eric Brewer, Couchbase és normalment un sistema de tipo CP lo que significa que proporciona consistència de senyes i tolerància de partició, o pot ser configurat com un sistema de punt d'accés (AP) en varis clústers.

Administrador de clústers

[editar | editar còdic]

L'administrador del clúster supervisa la configuració i el comportament de tots els servidors d'un clúster de Couchbase. Configura i supervisa el comportament entre nodos, aixina com la gestió de fluix de replicació i operacions de reequilibrio. També proporciona funcions d'agregació i de consens mètriques en el clúster i un interfaç de gestió de clústers REST. El gestor de clúster utilisa el llenguage de programació Erlang i Open Telecom Platform.

Replicació i conmutación per error

[editar | editar còdic]

La replicació (informàtica) dins dels nodos d'un clúster es pot controlar en varis paràmetros. En decembre de 2012, es va afegir la capacitat de replicació entre diferents centres de senyes.[4]

Gestor de senyes

[editar | editar còdic]

El gestor de senyes almagasena i reintenta documents en resposta a les operacions de senyes de les aplicacions. De forma asíncrona escriu senyes en el disc despuix de reconéixer al client. En la versió 1.7 i posteriors, les aplicacions poden assegurar opcionalmente que les senyes s'escriguen en més d'un servidor o en disc abans de reconéixer una escritura al client. Els paràmetros definixen les edats dels elements que afecten quan les senyes es mantenen i cóm es gestiona la memòria màxima i la migració des de la memòria principal al disc. Soporta conjunts de treball majors que una quota de memòria per "nodo" o "gaveta". Els sistemes externs poden subscriure's als fluix de senyes filtrades, recolzant, per eixemple, indexación de busca en text complet, anàlisis de senyes o archiu.[6]

Format de senyes

[editar | editar còdic]

Un document és l'unitat més bàsica de manipulació de senyes en Couchbase Server. Els documents s'almagasenen en format JSON, sense esquemes predefinits.

Memòria caché d'objectes gestionats

[editar | editar còdic]

Couchbase Server inclou una caché integrada multi-fil d'objectes, que implementa les API compatibles en memcached tals com get, set, delete, append, prepend, etc.

Motor d'almagasenament

[editar | editar còdic]

Couchbase Server té un disseny d'almagasenament tail-append que és immune a la corrupció de senyes, agotament de l'espai de memòria o caiguda elèctrica repentina. Les senyes s'escriuen en l'archiu de senyes de forma append-only, lo que permet a Couchbase fer principalment escritures seqüencials per a actualisar i proporcionar patrons d'accés optimisats d'I/S en el disc.

Rendiment

[editar | editar còdic]

Una referència de rendiment realisat per Altoros en 2012, compara Couchbase Server en atres tecnologies.[7] Cisco Systems va publicar un punt de referència que medix la latencia i el rendiment de Couchbase Server en una càrrega de treball mixta en 2012.[8]


Referències

[editar | editar còdic]
  1. «NewProtocols - memcached - Klingon - Memcached - Google Project Hosting». Code.google.com. Consultat el 4 de juny de 2013.
  2. Shashank Tiwari. Professional NOSQL, John Wiley & Sons, pp. 15–16. ISBN 9781118167809.
  3. «Balancing Oracle and open source at Orbitz». GigaOM. Archivat des d'el original, el 27 de novembre de 2012. Consultat el 19 de setembre de 2016.
  4. 4,0 4,1 Andrew Brust. «Couchbase 2.0 released; implements JSON document store». ZDNet.
  5. Derrick Harris. «Couchbase goes 2.0, pushes SQL for NOSQL». GigaOm. Archivat des d'el original, el 2 d'octubre de 2016. Consultat el 19 de setembre de 2016.
  6. Trond Norbye. «Want to know what your memcached servers llaure doing? Tap them». Couchbase blog.
  7. Frank Weigel. «Benchmarking Couchbase». Couchbase. Archivat des d'el original, el 11 d'octubre de 2016. Consultat el 30 de setembre de 2016.
  8. «Cisco and Solarflare Achieve Dramatic Latency Reduction for Interactive Web Applications with Couchbase, a NOSQL Database». Cisco Systems. Archivat des d'el original, el 13 d'agost de 2012. Consultat el 7 d'octubre de 2016.