Baza de canapea

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 13 martie 2022; verificarea necesită 1 editare .
Serverul Couchbase
Tip de sistem distribuit de gestionare a datelor în format cheie-valoare și documente
Autor Couchbase Inc. [d]
Dezvoltator Couchbase Inc.
Scris in C++ , Erlang , C [1] , Go
Sistem de operare software multiplatformă
ultima versiune 6.5.1 (aprilie 2020)
Licență Licență Apache (ediția comunitară), proprietară (ediția Enterprise)
Site-ul web www.couchbase.com
 Fișiere media la Wikimedia Commons

Couchbase ( Couchbase Server ) este un sistem de gestionare a bazelor de date de clasă NoSQL care oferă instrumente similare cu Apache CouchDB pentru crearea de baze de date orientate spre documente în combinație cu depozite de valori-cheie asemănătoare Membase . Datorită suportului protocolului standard memcached , sistemul rămâne compatibil cu un număr mare de aplicații vechi și poate acționa ca un înlocuitor transparent pentru o serie de alte sisteme NoSQL. Codul sursă al sistemului este distribuit sub licența Apache .

Creat de echipa de dezvoltare comună a CouchDB și Membase, creat ca urmare a fuziunii dintre CouchOne și Membase. Motorul de stocare se bazează pe tehnologiile Membase, peste care se adaugă instrumente de indexare și interogare împrumutate de la CouchDB . Astfel, s-a putut realiza atât compatibilitate cu Apache CouchDB la nivelul limbajului de interogare și indici, cât și compatibilitate cu Membase la nivelul protocolului de acces la date și al API -ului de control . Părțile critice ale CouchDB au fost rescrise în C++ , dar multe subsisteme sunt încă în Erlang . Au fost pregătite SDK -uri speciale pentru dezvoltarea aplicațiilor în Java , Ruby , .NET , C / C++ , PHP , Node.js , Go și Python .

Vă permite să organizați stocarea datelor atât pe un singur nod , cât și sub forma unui sistem distribuit care plasează datele deasupra unui grup de servere. Există instrumente încorporate pentru asigurarea unei disponibilități ridicate, auto-vindecare în caz de defecțiune a nodurilor care servesc stocarea (datele pot fi duplicate pe diferite noduri) și construirea de stocări segmentate , copii ale cărora sunt răspândite în diferite centre de date . Sunt acceptate atât modurile de replicare unidirecțională (master-slave) cât și bidirecțională (master-master) . Acceptă crearea de indici primari și secundari, precum și de indici pe mai multe chei . Pentru optimizarea suplimentară a performanței, sunt utilizate mecanisme de stocare în cache în RAM și generarea automată a indexului.

Pe lângă capacitatea de a stoca date în formatul „cheie - valoare”, Couchbase vă permite să utilizați conceptul de stocare orientată pe documente, în care unitatea de stocare a datelor este un document care are un identificator unic, versiune și conține un set arbitrar de câmpuri denumite în formatul „cheie - valoare”. Modelul de date utilizat vă permite să definiți documente în format JSON , eliminând necesitatea ca un dezvoltator să definească o schemă de stocare. Interogarea și indexarea datelor se poate face conform paradigmei MapReduce . Pentru a organiza un set de date pseudo-structurate din documente arbitrare, se propune conceptul de formare a vederilor (vedere).

Limbajul JavaScript este folosit pentru a forma logica de eșantionare . De asemenea, pentru a accesa datele JSON, este implementat un limbaj de interogare specializat, asemănător SQL , N1QL (din limba engleză N1NF QL; limbaj de interogare în formă normală non-1 ; pronunțat similar cu nichel ), care acceptă operatori (cu grupări și tipuri limitate de îmbinare ), , , , (inserați sau actualizați dacă există o înregistrare cu cheia dată, un operator mai general a fost suportat ulterior - ).  SELECTINSERTUPDATEDELETEUPSERTMERGE

Note

  1. Postat 8 ianuarie 2013 la 13:00. Eficacitatea nerezonabilă a lui C . Damien Katz (8 ianuarie 2013). Data accesului: 4 iunie 2013. Arhivat din original pe 21 februarie 2013.

Link -uri