Couchbase szerver | |
---|---|
Típusú | elosztott adatkezelő rendszer kulcsérték formátumban és dokumentumokban |
Szerző | Couchbase Inc. [d] |
Fejlesztő | Couchbase Inc. |
Beírva | C++ , Erlang , C [1] , Go |
Operációs rendszer | többplatformos szoftver |
legújabb verzió | 6.5.1 (2020. április) |
Engedély | Apache licenc (közösségi kiadás), szabadalmaztatott (vállalati kiadás) |
Weboldal | www.couchbase.com |
Médiafájlok a Wikimedia Commons oldalon |
A Couchbase ( Couchbase Server ) egy NoSQL osztályú adatbázis-kezelő rendszer , amely az Apache CouchDB -hez hasonló eszközöket biztosít dokumentum-orientált adatbázisok létrehozásához Membase -szerű kulcsérték- tárolókkal kombinálva . A szabványos memcached protokoll támogatásának köszönhetően a rendszer továbbra is kompatibilis marad számos örökölt alkalmazással, és számos más NoSQL rendszer átlátható helyettesítőjeként működhet. A rendszer forráskódja az Apache licenc alatt kerül terjesztésre .
A CouchDB és a Membase közös fejlesztőcsapata hozta létre, a CouchOne és a Membase egyesülésének eredményeként. A tárolómotor a Membase technológiákon alapul, amelyekhez a CouchDB-től kölcsönzött indexelő és lekérdező eszközök is hozzáadódnak . Így sikerült elérni mind az Apache CouchDB-vel való kompatibilitást a lekérdezési nyelv és indexek szintjén, mind a Membase kompatibilitást az adatelérési protokoll és a vezérlő API szintjén . A CouchDB kritikus részeit átírták C++ nyelven , de sok alrendszer még mindig Erlang nyelven van . Speciális SDK -k készültek Java , Ruby , .NET , C / C++ , PHP , Node.js , Go és Python alkalmazások fejlesztésére .
Lehetővé teszi az adattárolás megszervezését egyetlen csomóponton és elosztott rendszer formájában is, amely az adatokat egy kiszolgálócsoport tetejére helyezi. Vannak beépített eszközök a magas rendelkezésre állás biztosítására, a tárolót kiszolgáló csomópontok meghibásodása esetén az öngyógyításra (az adatok különböző csomópontokon duplikálhatók), valamint a szegmentált tárolók építésére, amelyek másolatai különböző adatközpontokban vannak szétszórva . Mind az egyirányú (mester-szolga), mind a kétirányú (mester-master) replikációs mód támogatott . Támogatja elsődleges és másodlagos indexek, valamint több kulcson lévő indexek létrehozását . A teljesítmény további optimalizálásához beépített gyorsítótárazási mechanizmusokat használnak a RAM -ban és automatikus indexgenerálást.
A Couchbase amellett, hogy az adatokat "kulcs - érték" formátumban tárolja, lehetővé teszi a dokumentum-orientált tárolás fogalmának használatát, amelyben az adattárolás egysége egy olyan dokumentum, amely egyedi azonosítóval, verzióval rendelkezik, és tartalmazza elnevezett mezők tetszőleges halmaza "kulcs - érték" formátumban. A használt adatmodell lehetővé teszi a dokumentumok JSON formátumban történő meghatározását , így nincs szükség a fejlesztőnek a tárolási séma meghatározására. Az adatok lekérdezése és indexelése a MapReduce paradigma szerint történhet . Egy pszeudostrukturált adathalmaz tetszőleges dokumentumokból történő szervezéséhez javasolt a nézetek (nézet) kialakításának koncepciója.
A JavaScript nyelvet használják a mintavételi logika kialakításához . A JSON-adatok eléréséhez egy speciális, SQL - szerű N1QL lekérdezési nyelvet (az angol N1NF QL-ből; nem 1. normál formájú lekérdezési nyelv ; a nikkelhez hasonlóan ejtve ) valósítják meg, amely támogatja az operátorokat ( csoportosítással és korlátozott csatlakozási típusokkal ), , , , (beszúrás vagy frissítés, ha van rekord az adott kulccsal, utólag egy általánosabb operátor támogatott - ). SELECTINSERTUPDATEDELETEUPSERTMERGE