Verëffentlechung vun der dokumentorientéierter DBMS Apache CouchDB 3.0

stattfonnt huet Verëffentlechung vun enger verdeelt dokumentorientéierter Datebank Apache CouchDB 3.0, gehéiert zu der Klass vun NoSQL Systemer. Projet Quellen ausbreeden lizenzéiert ënner Apache 2.0.

Verbesserungenan Apache CouchDB 3.0 implementéiert:

  • D'Standardkonfiguratioun gouf verbessert.
    Beim Start muss den Administrateur Benotzer elo definéiert ginn, ouni deen de Server mat engem Fehler ofgeschloss gëtt (erlaabt Iech Probleemer ze léisen mat Serveren ze lancéieren déi zoufälleg Zougang ouni Authentifikatioun verloossen). Uruff un "/_all_dbs" erfuerderen elo Administratorrechter, an all Datenbanken ginn als Standard nëmmen zougänglech fir den Admin Benotzer erstallt (Zougangsparameter kënnen duerch den "_security" Objet geännert ginn). Par défaut ass d'Editioun vun Objeten an der _users Datebank verbueden;

  • Dobäigesat d'Fäegkeet fir Benotzerdefinéiert segmentéiert (partitionéiert) Datenbanken ze kreéieren, sou datt et méiglech ass Är eege Regele fir d'Verdeelung vun Dokumenter iwwer Segmenter ze definéieren (Shard Range). Besonnesch Optimiséierunge fir zerstéiert Datenbanken op Mango Meenungen an Indize bäigefüügt;
  • Ëmgesat automatesch Divisiounsmodus wärend der Segmentatioun (Sharding). An der Datebank ass et elo méiglech Daten tëscht Segmenter ze verdeelen, andeems Dir eng Erhéijung vum Wäert vum q-Faktor berécksiichtegt fir den Niveau vum Decompte ze bestëmmen;
  • Dobäigesat ken Subsystem fir automatesch Background Indexéierung an halen sekundär Indexen (JavaScript, Mango, Text Sich Indexen) up to date ouni explizit hir Konstruktiounsoperatiounen ze starten;
  • De Smoosh-Prozess, dee fir automatesch Datebankverpackung benotzt gëtt, gouf komplett nei geschriwwen;
  • Neie Subsystem proposéiert IO Queue, benotzt fir d'I/O Prioritéit fir bestëmmte Operatiounen z'änneren;
  • Ëmgesat e Regressiounstestsystem;
  • Zousätzlech offiziell Ënnerstëtzung fir arm64v8 (aarch64) an ppc64le (ppc64el) Plattformen;
  • Ënnerstëtzung bäigefüügt fir mat dem JavaScript-Motor SpiderMonkey 1.8.5 (ESR Branche vu Firefox 60) ze verbannen mat verbesserte Support fir ES5, ES6 an ES2016+;
  • Sich-Moteur abegraff Dreyfus baséiert op Lucene, wat d'Vereinfachung vun enger Sichmotor op CouchDB staark vereinfacht;
  • Backend bäigefüügt fir ze protokolléieren mat systemd-journald;
  • D'Astellung "[couchdb] single_node" bäigefüügt, wann se agestallt sinn, wäert CouchDB automatesch Systemdatenbanken erstellen wa se fehlen;
  • D'Performance vum Couch_server Prozess gouf optimiséiert;
  • Den Installateur fir d'Windows Plattform gouf wesentlech verbessert;
  • Views sinn limitéiert op 2^28 (268435456) Resultater. Dës Limit kann separat konfiguréiert ginn fir regelméisseg a segmentéiert Usiichten mat den Optiounen query_limit a partition_query_limit an der Rubrik "[query_server_config]";
  • Eng separat HTTP lokal Node Gestioun Interface, lancéiert op Netzwierkport 5986, gouf geläscht, d'Funktionalitéit vun deem ass elo duerch d'gemeinsame Cluster Management Interface verfügbar;
  • Déi maximal Dokumentgréisst ass op 8 MB reduzéiert ginn, wat Probleemer mat Datereplikatioun vun eelere Serveren no Upgrade op CouchDB 3.0 verursaache kann. Fir d'Limite ze erhéijen, kënnt Dir d'Astellung "[couchdb] max_document_size" benotzen;
  • Eng gréisser Botzen vun eelere Funktiounen gouf duerchgefouert, sou wéi den _replicator an _external Uriff, d'Felder Disk_size an Data_size, an d'Delayed_commits Optioun;
  • CouchDB lafen erfuerdert elo Erlang/OTP 20.3.8.11+, 21.2.3+ oder 22.0.5. Theoretesch ass d'Funktionalitéit mat der Erlang / OTP 19 Branche bewahrt, awer et ass duerch Tester ofgedeckt.

Loosst eis drun erënneren datt CouchDB Daten an engem bestallte Lëschtformat späichert an deelweis Replikatioun vun Daten tëscht verschiddene Datenbanken an engem Master-Master Modus mat simultaner Detektioun a Léisung vu Konfliktsituatiounen erlaabt. All Server späichert säin eegene lokale Set vun Daten, synchroniséiert mat anere Serveren, déi offline kënne geholl ginn a periodesch Ännerungen replizéieren. Besonnesch dës Fonktioun mécht CouchDB eng attraktiv Léisung fir d'Synchroniséierung vu Programmer tëscht verschiddene Computeren. CouchDB-baséiert Léisunge goufen a Firmen wéi BBC, Apple an CERN implementéiert.

CouchDB Ufroen an Datenindexéierung kënnen no dem Paradigma ausgefouert ginn MapReduce, benotzt JavaScript fir Dateprobelogik ze generéieren. De Systemkär ass an Erlang geschriwwen, wat optimiséiert ass fir verdeelt Systemer ze kreéieren déi verschidde parallel Ufroen déngen. De View-Server ass a C geschriwwen a baséiert op dem JavaScript-Motor vum Mozilla-Projet. Zougang zu der Datebank gëtt mam HTTP-Protokoll mat engem RESTful JSON API duerchgefouert, wat Iech erlaabt Zougang zu Daten ze kréien, och vu Webapplikatiounen déi am Browser lafen.

D'Datespeicher Eenheet ass en Dokument dat en eenzegaartegen Identifizéierer, Versioun huet an eng arbiträr Set vu benannte Felder am Schlëssel / Wäertformat enthält. Fir e pseudo-strukturéierte Satz vun Donnéeën aus arbiträren Dokumenter (Aggregatioun a Selektioun) z'organiséieren, gëtt d'Konzept vun der Form vu Meenungen (Vue) benotzt, fir ze definéieren wéi eng JavaScript Sprooch benotzt gëtt. JavaScript kann och Funktiounen definéieren fir Daten ze validéieren wann Dir nei Dokumenter an enger bestëmmter Vue bäidréit.

Source: opennet.ru

Setzt e Commentaire