Kuburitswa kwegwaro-rinotungamirwa DBMS Apache CouchDB 3.0

zvakaitika kuburitswa kwedhatabhesi rakagovaniswa negwaro Apache CouchDB 3.0, yekirasi yeNoSQL masisitimu. Project sources paradzira ine rezinesi pasi peApache 2.0.

Kuvandudzayakaitwa muApache CouchDB 3.0:

  • Iyo default configuration yakawedzerwa.
    Paunenge uchitanga, mushandisi we admin anofanira ikozvino kutsanangurwa, pasina iyo sevha inogumisa nekukanganisa (inobvumidza iwe kugadzirisa matambudziko nekutangisa maseva anosiya nekusaziva kuwana pasina humbowo). Kufona ku "/_all_dbs" ikozvino kunoda kodzero dzemaneja, uye ese dhatabhesi anogadzirwa nekusarudzika anowanikwa chete kumushandisi weadmin (maparamita ekuwana anogona kuchinjwa kuburikidza ne "_security" chinhu). Nekumisikidza, kugadzirisa zvinhu mu _users dhatabhesi kunorambidzwa;

  • Added kugona kugadzira mushandisi-akatsanangurwa akakamurwa (akakamurwa) dhatabhesi, zvichiita kuti zvikwanise kutsanangura yako wega mitemo yekugovera magwaro muzvikamu (shard renji). Yakawedzera yakakosha optimizations kune sharded dhatabhesi kune Mango maonero uye indexes;
  • Implemented otomatiki kupatsanura modhi panguva yechikamu (sharding). Mune dhatabhesi, ikozvino zvinogoneka kugovera zvakare data pakati pezvikamu, uchifunga nezvekuwedzera kwekukosha kweq-chinhu chinoshandiswa kuona chiyero chekuputsika;
  • Added ken subsystem ye otomatiki kumashure indexing uye kuchengeta yechipiri indexes (JavaScript, Mango, zvinyorwa zvekutsvaga indexes) kusvika parizvino pasina kuburitsa pachena mabasa avo ekuvaka;
  • Iyo smoosh process inoshandiswa kune otomatiki dhatabhesi packaging yakanyorwa zvachose;
  • New subsystem yakakurudzirwa IO Queue, yakashandiswa kushandura iyo I / O yekutanga kune mamwe mabasa;
  • Yakaitwa regression test system;
  • Yakawedzera rutsigiro rwepamutemo rwearm64v8 (aarch64) uye ppc64le (ppc64el) mapuratifomu;
  • Yakawedzerwa rutsigiro rwekubatanidza neinjini yeJavaScript SpiderMonkey 1.8.5 (ESR bazi reFirefox 60) nerutsigiro rwakavandudzwa rweES5, ES6 uye ES2016+;
  • Injini yekutsvaga inosanganisirwa Dreyfus zvichibva paLucene, iyo inorerutsa zvakanyanya kuiswa kweinjini yekutsvaga yakavakirwa paCouchDB;
  • Yakawedzera backend yekutema matanda uchishandisa systemd-journald;
  • Yakawedzera iyo "[couchdb] single_node" kuseta, kana yaiswa, CouchDB inozogadzira otomatiki dhatabhesi rehurongwa kana asipo;
  • Kuita kwesofa_server maitiro akagadziridzwa;
  • Iyo yekuisa yeWindows platform yakagadziridzwa zvakanyanya;
  • Maonero anogumira ku2^28 (268435456) zvawanikwa. Muganho uyu unogona kugadzirwa zvakapatsanurwa kuti zvionekwe zvakajairwa uye zvakakamurwa uchishandisa query_limit uye partition_query_limit sarudzo mu[query_server_config] chikamu;
  • Iyo yakaparadzana HTTP yemuno node manejimendi interface, yakatangwa pane network port 5986, yakabviswa, iyo mashandiro ayo ave kuwanikwa kuburikidza neyakajairika cluster management interface;
  • Saizi yepamusoro yegwaro yakaderedzwa kusvika 8 MB, izvo zvinogona kukonzera matambudziko nekudzokorora data kubva kumaseva ekare mushure mekusimudzira kuCouchDB 3.0. Kuti uwedzere muganho, unogona kushandisa [couchdb] max_document_size kurongedza;
  • Kucheneswa kukuru kwezvinhu zvakasakara kwaitwa, senge _replicator uye _external call, disk_size uye data_size minda, uye inononoka_commits sarudzo;
  • Kumhanya CouchDB ikozvino kunoda Erlang/OTP 20.3.8.11+, 21.2.3+ kana 22.0.5. Tichifunga, kushanda nebazi reErlang/OTP 19 kunochengetedzwa, asi kwakafukidzwa nemiedzo.

Ngatiyeukei kuti CouchDB inochengeta dhata mune yakarongedzerwa rondedzero fomati uye inobvumira chidimbu kudzokororwa kwedata pakati akati wandei dhatabhesi mune master-master modhi nekuona panguva imwe chete uye kugadzirisa kwemakakatanwa mamiriro. Sevha yega yega inochengeta yayo yega seti yedata, yakawiriraniswa nemamwe maseva, ayo anogona kutorwa kunze kwenyika uye nguva nenguva achidzokorora shanduko. Kunyanya, chinhu ichi chinoita kuti CouchDB ive mhinduro inoyevedza yekuyananisa zvirongwa zvechirongwa pakati pemakomputa akasiyana. CouchDB-yakavakirwa mhinduro dzakaitwa mumakambani akadai seBBC, Apple uye CERN.

CouchDB mibvunzo uye data indexing inogona kuitwa zvinoenderana neparadigm MepuDeredza, uchishandisa JavaScript kugadzira data sampling logic. Iyo musimboti wesystem yakanyorwa muErlang, iyo yakagadziridzwa kugadzira akagoverwa masisitimu anoshanda akawanda akafanana zvikumbiro. Iyo sevha yekuona yakanyorwa muC uye yakavakirwa pane JavaScript injini kubva kuMozilla purojekiti. Kuwanikwa kune dhatabhesi kunoitwa uchishandisa HTTP protocol uchishandisa RESTful JSON API, iyo inokutendera iwe kuti uwane data, kusanganisira kubva pawebhu maapplication ari mubrowser.

Iyo data yekuchengetedza unit igwaro rine yakasarudzika identifier, vhezheni uye ine yakasarudzika seti yeminda ine mazita mune kiyi / kukosha fomati. Kuronga pseudo-yakarongeka seti ye data kubva kune zvinyorwa zvisinganzwisisiki (kuunganidza uye kusarudzwa), pfungwa yekugadzira maonero (maonero) inoshandiswa, kutsanangura iyo JavaScript mutauro unoshandiswa. JavaScript inogonawo kutsanangura mabasa ekusimbisa data paunenge uchiwedzera zvinyorwa zvitsva mukati meimwe maonero.

Source: opennet.ru

Voeg