Pieejama uz dokumentiem orientēta DBVS MongoDB 5.0

Tiek prezentēts uz dokumentiem orientētās DBVS MongoDB 5.0 izlaidums, kas ieņem niÅ”u starp ātrām un mērogojamām sistēmām, kas izmanto datus atslēgas/vērtÄ«bas formātā, un relāciju DBVS, kas ir funkcionālas un viegli veidojami vaicājumi. MongoDB kods ir rakstÄ«ts C++ valodā un tiek izplatÄ«ts saskaņā ar SSPL licenci, kas ir balstÄ«ta uz AGPLv3 licenci, bet nav atvērta, jo satur diskriminējoÅ”u prasÄ«bu piegādāt saskaņā ar SSPL licenci ne tikai paÅ”u lietojumprogrammas kodu, bet arÄ« avotu. visu mākoņpakalpojuma nodroÅ”ināŔanā iesaistÄ«to komponentu kods.

MongoDB atbalsta dokumentu glabāŔanu JSON lÄ«dzÄ«gā formātā, tai ir diezgan elastÄ«ga valoda vaicājumu Ä£enerÄ“Å”anai, var izveidot indeksus dažādiem saglabātajiem atribÅ«tiem, efektÄ«vi nodroÅ”ina lielu bināro objektu uzglabāŔanu, atbalsta operāciju reÄ£istrÄ“Å”anu datu mainÄ«Å”anai un pievienoÅ”anai datu bāzei, var strādāt saskaņā ar paradigmu Map/Reduce, atbalsta replikāciju un defektu izturÄ«gu konfigurāciju konstruÄ“Å”anu.

MongoDB ir iebÅ«vēti rÄ«ki sadalÄ«Å”anas nodroÅ”ināŔanai (datu kopas sadalei starp serveriem, pamatojoties uz noteiktu atslēgu), apvienojumā ar replikāciju, ļaujot izveidot horizontāli mērogojamu krātuves klasteri, kurā nav viena kļūmes punkta (kļūmes neviena mezgla darbÄ«ba neietekmē datu bāzes darbÄ«bu), automātiska atkopÅ”ana pēc atteices un slodzes pārneÅ”ana no neveiksmÄ«ga mezgla. Klastera paplaÅ”ināŔana vai viena servera pārvērÅ”ana par klasteru tiek veikta, neapturot datubāzi, vienkārÅ”i pievienojot jaunas maŔīnas.

Jaunā laidiena iezīmes:

  • Pievienotas datu kolekcijas laikrindu veidā (laikrindu kolekcijas), kas optimizētas noteiktos intervālos reÄ£istrēto parametru vērtÄ«bu slāņu glabāŔanai (laiks un vērtÄ«bu kopa, kas atbilst Å”im laikam). NepiecieÅ”amÄ«ba uzglabāt Ŕādus datus rodas uzraudzÄ«bas sistēmās, finanÅ”u platformās un sensoru stāvokļu aptaujas sistēmās. Darbs ar laikrindu datiem tiek veikts tāpat kā ar parastajām dokumentu kolekcijām, taču to indeksi un uzglabāŔanas metode ir optimizēta, ņemot vērā laika atskaiti, kas var ievērojami samazināt diska vietas patēriņu, samazināt vaicājumu izpildes aizkavi un iespējot reāllaika datus. analÄ«ze.

    MongoDB apstrādā Ŕādas kolekcijas kā rakstāmus, nematerializētus skatus, kas veidoti uz iekŔējām kolekcijām, kas pēc ievietoÅ”anas automātiski grupē laikrindu datus optimizētā krātuves formātā. Šādā gadÄ«jumā katrs uz laiku balstÄ«ts ieraksts pēc pieprasÄ«juma tiek uzskatÄ«ts par atseviŔķu dokumentu. Dati tiek automātiski sakārtoti un indeksēti pēc laika (nav nepiecieÅ”ams tieÅ”i izveidot laika indeksus).

  • Pievienots atbalsts logu operatoriem (analÄ«tiskajām funkcijām), kas ļauj veikt darbÄ«bas ar noteiktu dokumentu kopu kolekcijā. AtŔķirÄ«bā no apkopotajām funkcijām logu funkcijas nesakļauj grupēto kopu, bet gan apkopo, pamatojoties uz ā€œlogaā€ saturu, kurā ir iekļauts viens vai vairāki dokumenti no rezultātu kopas. Lai manipulētu ar dokumentu apakÅ”kopu, tiek piedāvāts jauns $setWindowFields posms, ar kuru varat, piemēram, noteikt atŔķirÄ«bas starp diviem kolekcijas dokumentiem, aprēķināt pārdoÅ”anas klasifikāciju un analizēt informāciju sarežģītās laikrindās.
  • Pievienots API versijas atbalsts, kas ļauj saistÄ«t lietojumprogrammu ar noteiktu API stāvokli un novērst riskus, kas saistÄ«ti ar iespējamu atgriezeniskās saderÄ«bas pārkāpumu, migrējot uz jauniem DBVS laidieniem. API versiju noteikÅ”ana atdala lietojumprogrammas dzÄ«ves ciklu no DBVS dzÄ«ves cikla un ļauj izstrādātājiem veikt izmaiņas lietojumprogrammā, ja ir nepiecieÅ”ams izmantot jaunas funkcijas, nevis migrējot uz jaunu DBVS versiju.
  • Pievienots atbalsts Live Resharding mehānismam, kas ļauj mainÄ«t segmentÄ“Å”anai izmantotos shard taustiņus lidojumā, neapturot DBVS.
  • Ir paplaÅ”inātas iespējas Å”ifrēt laukus klienta pusē (Client-Side Field Level Encryption). Tagad ir iespējams pārkonfigurēt audita filtrus un pagriezt x509 sertifikātus, neapturot DBVS. Pievienots atbalsts Å”ifru komplekta konfigurÄ“Å”anai TLS 1.3.
  • Tiek piedāvāts jauns komandrindas apvalks MongoDB Shell (mongosh), kas tiek izstrādāts kā atseviŔķs projekts, rakstÄ«ts JavaScript, izmantojot platformu Node.js, un izplatÄ«ts saskaņā ar Apache 2.0 licenci. MongoDB Shell ļauj izveidot savienojumu ar DBVS, mainÄ«t iestatÄ«jumus un nosÅ«tÄ«t vaicājumus. Atbalsta viedo automātisko pabeigÅ”anu metožu, komandu un MQL izteiksmju ievadÄ«Å”anai, sintakses izcelÅ”anu, kontekstuālo palÄ«dzÄ«bu, kļūdu ziņojumu parsÄ“Å”anu un iespēju paplaÅ”ināt funkcionalitāti, izmantojot pievienojumprogrammas. Vecais "mongo" CLI iesaiņojums ir novecojis un tiks noņemts nākamajā laidienā.
    Pieejama uz dokumentiem orientēta DBVS MongoDB 5.0
  • Ir pievienoti jauni operatori: $count, $dateAdd, $dateDiff, $dateSubtract, $sampleRate un $rand.
  • NodroÅ”ina, lai indeksi tiktu izmantoti, izmantojot $eq, $lt, $lte, $gt un $gte operatorus izteiksmē $expr.
  • Komandas apkopot, atrast, atrastAndModify, atjaunināt, dzēst un metodes db.collection.aggregate(), db.collection.findAndModify(), db.collection.update() un db.collection.remove() tagad atbalsta ā€œletā€. ā€ opciju, lai definētu mainÄ«go sarakstu, kas padara komandas lasāmākas, atdalot mainÄ«gos no pieprasÄ«juma pamatteksta.
  • Atrast, skaitÄ«t, atŔķirt, apkopot, mapReduce, listCollections un listIndexes darbÄ«bas vairs nebloķē, ja paralēli darbojas darbÄ«ba, kas bloķē dokumentu kolekciju.
  • Kā daļa no iniciatÄ«vas, lai noņemtu politiski nepareizus terminus, komanda isMaster un metode db.isMaster() ir pārdēvētas par hello un db.hello().
  • Ir mainÄ«ta izlaidumu numerācijas shēma un veikta pāreja uz paredzamu izlaiÅ”anas grafiku. Reizi gadā tiks izdots nozÄ«mÄ«gs laidiens (5.0, 6.0, 7.0), ik pēc trim mēneÅ”iem starpizlaidumi ar jaunām funkcijām (5.1, 5.2, 5.3) un, ja nepiecieÅ”ams, koriģējoÅ”ie atjauninājumi ar kļūdu labojumiem un ievainojamÄ«bām (5.1.1, 5.1.2). .5.1.3 , 5.1). Pagaidu laidieni veidos funkcionalitāti nākamajam lielajam laidienam, t.i. MongoDB 5.2, 5.3 un 6.0 nodroÅ”inās jaunas funkcijas MongoDB XNUMX izlaiÅ”anai.

Avots: opennet.ru

Pievieno komentāru