Spuštění nová verze Apache CouchDB 3.0, který je distribuovaná databáze orientovaná na dokumenty, patřící do třídy systémů NoSQL. CouchDB se vyznačuje ukládáním dat ve formátu seřazeného seznamu a umožňuje částečnou replikaci dat mezi více databázemi v režimu master-master se současnou detekcí a řešením konfliktních situací.
Každý server ukládá svůj vlastní lokální datový soubor synchronizovaný s jinými servery, Mohou přejít do režimu offline a pravidelně replikovat změny. Tato funkce zejména činí z CouchDB atraktivní řešení pro organizaci synchronizace nastavení programu mezi různými počítači.
Řešení založená na CouchDB byla implementována společnostmi jako BBC, Apple a CERN.
CouchDB dotazy a indexování dat lze provádět podle paradigmatu MapReduce pomocí JavaScriptu ke generování logiky vzorkování dat.
Jádro systému je napsáno v jazyce Erlang, který je optimalizován pro vytváření distribuovaných systémů obsluhujících mnoho paralelních požadavků. Pohledový server je napsán v jazyce C a je založen na JavaScriptu projektu Mozilla.
Přístup do databáze se provádí pomocí protokolu HTTP pomocí rozhraní RESTful JSON API, které vám umožní přístup k datům, a to i z webových aplikací spuštěných v prohlížeči.
Dokument, který má jedinečný identifikátor, verzi a který obsahuje libovolnou sadu pojmenovaných polí ve formátu klíč / hodnota, funguje jako jednotka pro ukládání dat. P
K uspořádání sady pseudostrukturovaných dat z libovolných dokumentů (agregace a vzorkování) se používá koncept vytváření pohledů, které jsou definovány pomocí JavaScriptu. V JavaScriptu můžete také definovat funkce pro ověření dat při přidávání nových dokumentů v konkrétním zobrazení.
Co je nového v Apache CouchDB 3.0
V této nové verzi ve výchozím nastavení je zvýrazněna vylepšená ochrana. Při spuštění by měl být nyní definován uživatel správce, bez kterého server ukončí svou činnost s chybou.
Pro přístup k hovorům na «/ _all_dbs» musíte mít oprávnění správce a všechny databáze jsou ve výchozím nastavení vytvářeny pouze pro uživatele správce (lze je změnit pomocí objektu „_security“), kromě toho je ve výchozím nastavení zakázáno upravovat objekty v databázi _users.
Přidáno schopnost vytvářet segmentované databáze Definováno uživatelem (rozdělené na oddíly), což vám umožňuje definovat vlastní pravidla pro distribuci dokumentů podle segmentů (rozsah fragmentů). Byly přidány speciální optimalizace pro segmentované databáze k pohledům a indexům.
Můžeme také najít implementace automatického oddělení během segmentace (fragmentace). V databázi je nyní možné redistribuovat data podle segmentů, s přihlédnutím ke zvýšení faktoru q použitého k určení úrovně dezagregace.
Subsystém byl přidán ken pro automatickou indexaci pozadí a udržovat sekundární indexy aktuální bez výslovného zahájení operací k jejich sestavení.
Maximální velikost dokumentu je snížena na 8 MB, což může vést k problémům s replikací dat ze starších serverů po upgradu na CouchDB 3.0. Ke zvýšení limitu můžete použít nastavení „[couchdb] max_document_size“.
Z dalších změn které jsou zmíněny:
- Optimalizace výkonu procesu couch_server.
- Výrazně vylepšený instalační program pro platformu Windows.
- Proces smoosh používaný pro automatické balení databáze byl zcela přepsán.
- Je navržen nový subsystém I / O fronty, který se používá ke změně priority I / O pro určité operace.
- Implementován regresní testovací systém.
- Byla přidána oficiální podpora pro platformy arm64v8 (aarch64) a ppc64le (ppc64el).
- Přidána podpora pro propojení s JavaScriptovým modulem SpiderMonkey 1.8.5 (větev ESR ve Firefoxu 60) s vylepšenou podporou pro ES5, ES6 a ES2016 +.
- Rámec zahrnuje vyhledávací stroj Dreyfus založený na Lucene, který může výrazně zjednodušit implementaci vyhledávacího modulu založeného na CouchDB.
- Přidán back-end pro přihlášení pomocí systemd-journald.
Zajímavé molto. Io gestisco tre server CouchDB a ho appena migrato alla 3.0.
Pro správu automatismu a skriptu vari používám PowerShell, pokud dává Windows a Linux s modulem PSCouchDB (https://github.com/MatteoGuadrini/PSCouchDB) který usnadňuje správu.
Používám to sopprattutto pro funkci Import / Export k zálohování databáze a také ke generování zprávy.
CouchDB č davvero splendido!