Gefa út skjalamiðaða DBMS Apache CouchDB 3.0

fór fram útgáfu dreifðs skjalamiðaðs gagnagrunns Apache CouchDB 3.0, sem tilheyrir flokki NoSQL kerfa. Verkefnisheimildir dreifing leyfi samkvæmt Apache 2.0.

Endurbæturútfært í Apache CouchDB 3.0:

  • Sjálfgefin stilling hefur verið endurbætt.
    Þegar byrjað er, verður admin notandinn að vera skilgreindur, án þess mun þjónninn hætta með villu (gerir þér kleift að leysa vandamál með að ræsa netþjóna sem óvart skilja aðgang án auðkenningar). Símtöl í "/_all_dbs" krefjast nú stjórnandaréttinda og allir gagnagrunnar eru búnir til sjálfgefið aðeins aðgengilegir admin notanda (aðgangsbreytum er hægt að breyta í gegnum "_security" hlutinn). Sjálfgefið er að breyta hlutum í _users gagnagrunninum er bönnuð;

  • Bætt við möguleikinn á að búa til notendaskilgreinda gagnagrunna (hlutaskipt) sem gerir það mögulegt að skilgreina eigin reglur um dreifingu skjala yfir hluta (shard range). Bætti við sérstakri hagræðingu fyrir sundurlausa gagnagrunna við Mango skoðanir og vísitölur;
  • Framkvæmt sjálfvirk skiptingarstilling við skiptingu (sharding). Í gagnagrunninum er nú hægt að endurdreifa gögnum á milli hluta, að teknu tilliti til hækkunar á gildi q-þáttarins sem notaður er til að ákvarða sundurliðunarstig;
  • Bætt við ken undirkerfi fyrir sjálfvirka bakgrunnsskráningu og að halda aukavísitölum (JavaScript, Mango, textaleitarvísitölum) uppfærðum án þess að hefja byggingaraðgerðir þeirra beinlínis;
  • Smoosh ferlið sem notað er fyrir sjálfvirka gagnagrunnspökkun hefur verið algjörlega endurskrifað;
  • Nýtt undirkerfi lagt til IO biðröð, notað til að breyta I/O forgangi fyrir ákveðnar aðgerðir;
  • Innleitt aðhvarfsprófunarkerfi;
  • Bætti við opinberum stuðningi fyrir arm64v8 (aarch64) og ppc64le (ppc64el) palla;
  • Bætti við stuðningi við tengingu við JavaScript vélina SpiderMonkey 1.8.5 (ESR útibú Firefox 60) með bættum stuðningi fyrir ES5, ES6 og ES2016+;
  • Leitarvél fylgir Dreyfus byggt á Lucene, sem einfaldar mjög uppsetningu leitarvélar sem byggir á CouchDB;
  • Bætt við bakenda fyrir skráningu með systemd-journald;
  • Bætti við „[couchdb] single_node“ stillingunni, þegar hún er stillt mun CouchDB sjálfkrafa búa til kerfisgagnagrunna ef þá vantar;
  • Afköst couch_server ferlisins hafa verið fínstillt;
  • Uppsetningarforritið fyrir Windows pallinn hefur verið endurbætt verulega;
  • Áhorf takmarkast við 2^28 (268435456) niðurstöður. Hægt er að stilla þessi mörk sérstaklega fyrir venjulegar og sundurliðaðar skoðanir með því að nota query_limit og partition_query_limit valkostina í „[query_server_config]“ hlutanum;
  • Sérstakt HTTP staðbundið hnútstjórnunarviðmót, hleypt af stokkunum á netgátt 5986, hefur verið fjarlægt, virkni þess er nú fáanleg í gegnum sameiginlega klasastjórnunarviðmótið;
  • Hámarksstærð skjala hefur verið lækkuð í 8 MB, sem getur valdið vandræðum með afritun gagna frá eldri netþjónum eftir uppfærslu í CouchDB 3.0. Til að auka mörkin geturðu notað „[couchdb] max_document_size“ stillinguna;
  • Mikil hreinsun á úreltum eiginleikum hefur verið framkvæmd, svo sem _replicator og _external calls, disk_size og data_size reitunum og delayed_commits valmöguleikann;
  • Til að keyra CouchDB þarf nú Erlang/OTP 20.3.8.11+, 21.2.3+ eða 22.0.5. Fræðilega séð er virkni Erlang/OTP 19 útibúsins varðveitt, en hún er þakin prófum.

Við skulum muna að CouchDB geymir gögn á skipulögðu listasniði og leyfir afritun gagna að hluta á milli nokkurra gagnagrunna í master-master ham með samtímis uppgötvun og úrlausn átakaaðstæðna. Hver netþjónn geymir sitt eigið staðbundna gagnasett, samstillt við aðra netþjóna, sem hægt er að taka án nettengingar og endurtaka breytingar reglulega. Sérstaklega gerir þessi eiginleiki CouchDB að aðlaðandi lausn til að samstilla forritastillingar á milli mismunandi tölva. CouchDB-undirstaða lausnir hafa verið innleiddar í fyrirtækjum eins og BBC, Apple og CERN.

Hægt er að framkvæma CouchDB fyrirspurnir og flokkun gagna í samræmi við hugmyndafræðina MapReduce, með því að nota JavaScript til að búa til rökfræði fyrir sýnatökur. Kerfiskjarni er skrifaður í Erlang, sem er fínstillt til að búa til dreifð kerfi sem þjóna mörgum samhliða beiðnum. Útsýnisþjónninn er skrifaður í C ​​og er byggður á JavaScript vélinni frá Mozilla verkefninu. Aðgangur að gagnagrunninum fer fram með HTTP samskiptareglum með því að nota RESTful JSON API, sem gerir þér kleift að fá aðgang að gögnum, þar á meðal frá vefforritum sem keyra í vafranum.

Gagnageymslueiningin er skjal sem hefur einstakt auðkenni, útgáfu og inniheldur handahófskennt sett af nafngreindum reitum á lykil-/gildissniði. Til að skipuleggja gerviuppbyggt safn gagna úr handahófskenndum skjölum (samsöfnun og val) er hugtakið að mynda skoðanir (skoðanir) notað til að skilgreina hvaða JavaScript tungumál er notað. JavaScript getur einnig skilgreint aðgerðir til að staðfesta gögn þegar nýjum skjölum er bætt við í tilteknu útsýni.

Heimild: opennet.ru

Bæta við athugasemd