Dokumendikeskne andmebaas MongoDB 6.0 on saadaval

Pärast aasta arendust on välja tulnud dokumendikeskne andmebaas MongoDB 6.0, mis paikneb kiirete ja skaleeritavate võtme/väärtuse andmehaldus süsteemide ning sujuvate ja funktsionaalsete relatsiooniliste andmebaaside vahel, mis on mugavad päringute koostamiseks. MongoDB kood on kirjutatud C++ keeles ja seda levitatakse SSPL litsentsi alusel, mis põhineb AGPLv3 litsentsil, kuid ei ole avatud, kuna sisaldab diskrimineerivat nõuet pakkuda SSPL litsentsi alusel mitte ainult rakenduse enda koodi, vaid ka kogu koodis hõlmatud komponentide allikaid, mis on seotud pilveteenuse pakkumisega.

MongoDB toetab dokumentide salvestamist JSON-i sarnases formaadis, sellel on piisavalt paindlik päringukeel, mis võimaldab luua indekseid erinevate salvestatud atribuutide jaoks, tõhusalt haldab suuri binaarseid objekte, toetab muudatuste ja uute andmete lisamise operatsioonide logimist, suudab töötada Map/Reduce paradigma kohaselt, toetab replikatsiooni ja talitlushäirete eest kaitstud konfiguratsioonide loomist.

MongoDB-l on sisseehitatud vahendid andmete jaotamiseks (andmekogumi jaotamine serverite vahel kindla võtme alusel), koos replikatsiooniga, mis võimaldab luua horisontaalselt skaaleeritava salvestusklaastri, kus ei esine ühtegi rikkepunkti (kuna ükski sõlme rike ei mõjuta andmebaasi toimimist), toetatakse automaatset taastumist rikke korral ning koormuse üleviimist riknenud sõlmelt. Klaastri laiendamine või ühe muundamine serverid klaastriks toimub ilma andmebaasi töö katkestamata, lihtsalt uusi masinaid lisades.

Uue väljaande peamised omadused:

  • On rakendatud võimalus esitada päringuid, mis katab krüpteeritud kujul hoitud andmeid (Query-able Encryption). Andmed dekodeeritakse kasutaja poolel ja päringu töötlemise ajal jäävad nad krüpteerituks (päringut teostatakse krüpteeritud andmete peal, ilma et neid eelnevalt dekodeeritaks). Praeguses vormis lubatakse päringutes vaid võrdlusavaldisi, kuid edaspidi plaanitakse lisada toetust vahemike, eel- ja järelsuffixide, alamstringide ning muude operatsioonide kontrollimisele.
  • Andmete salvestamise võimalused ajas superseriaalide (time series collections) näol on laiendatud, mis on optimeeritud ajaliselt sissetulevate parameetrite väärtuste lõikude salvestamiseks (aeg ja vastava ajaga seotud väärtuste kogum). Näiteks tekib vajadus selliste andmete salvestamise järele jälgimissüsteemides, finantseesmärkide platvormides ja sensorite olekute andurite küsitlustes. Uues versioonis on võimalus kasutada sekundaarseid ja koosseisulisi indekseid ajas superseriaalide andmekogumitega. Lisatud on täiendavate andmete, näiteks geograafilise teabe, kinnitamise tugi, et arvestada kauguse ja asukohaga. Suurendatud on lugemise, päringute täitmise ja sortimise jõudlust.
  • Uued muutuste jälgimise vahendid («muutuste vood», API Change Streams) on lisatud, mille abil saab korraldada rakenduste teavitamist andmebaasi andmete muutumisest. Muutuste teave jõuab reaalajas ja võimaldab luua rakendusi reaktiivse ja sündmuspõhise programmeerimise meetodite abil. Sündmusi töödeldakse meetodi watch abil, samas saab vajalikke sündmusi filtreerida ja kokku koguda operaatoreid $match, $project ja $redact kasutades. Uues versioonis on võimalik saada dokumendi eelmisi ja järgmist seisundeid (näiteks juhul, kui dokument on kustutatud või muudetud). Peale DML-i (andmete manipuleerimise keel) pakutakse toetust ka DDL-i (andmete määratlemise keel) operatsioonidele, nagu indeksite ja kogude loomine ja kustutamine. Lisatud on vahendid seotud teavituste filtreerimiseks.
  • Operaatoreid $lookup ja $graphlookup toetavad täielikult sektsioonitud (sharded) salvestusi. Optimeeritud on $lookup operatsiooni jõudlus, näiteks kui välisvõtme põhjal on indeks, siis väikese hulga dokumentide vastavus toimub nüüd 5-10 korda kiiremini ja suure hulga puhul kaks korda kiiremini. Indeksite kasutamata jätmise korral võib jõudluse paranemine ulatuda 100 korda.
  • On antud võimalus teostada keerulisi analüütilisi päringuid kooskõlastatud tööandmete vaadete (snapshot) üle. Sellised analüütilised päringud võivad hõlmata mitmeid segmente suurtes jaotatud MongoDB konfiguratsioonides.
  • On lisatud uued operaatorid $maxN, $minN ja $lastN andmete väärtuste määramiseks, samuti operaator $sortArray massiivi elementide sortimiseks.
  • On märgatavalt suurenenud sekmenteerimise efektiivsus. Vaikimisi on sekmenteeritud kollektsiooni ploki suurus suurendatud 128 MB juurde. On lisatud käsk configureCollectionBalancing segmentide kollektsiooni defragmenteerimiseks.
  • Klientpooli andmete väljataseme krüptimise (CSFLE, client-side field-level encryption) vahenditesse on lisatud KMIP-ühilduvate võtmepakkujate tugi.
  • Lisatud on võimalus tihendada ja krüpteerida auditi logi, mis kajastab andmebaasi kasutajate tegevust.
  • On rakendatud eksperimentaalne režiim andmete sünkroniseerimiseks MongoDB klastrite vahel (Cluster-to-Cluster Sync).

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster