DBMS MongoDB 5.0 sing berorientasi dokumen kasedhiya

Rilis DBMS MongoDB 5.0 sing berorientasi dokumen ditampilake, sing nduwe ceruk antarane sistem cepet lan skalabel sing ngoperasikake data ing format kunci/nilai, lan DBMS relasional sing fungsional lan gampang dibentuk pitakon. Kode MongoDB ditulis ing C ++ lan disebarake ing lisensi SSPL, sing adhedhasar lisensi AGPLv3, nanging ora mbukak, amarga ngemot syarat diskriminasi kanggo ngirim lisensi SSPL ora mung kode aplikasi dhewe, nanging uga sumber. kode kabeh komponen sing melu nyedhiyakake layanan awan.

MongoDB ndhukung nyimpen dokumen ing format kaya JSON, nduweni basa sing cukup fleksibel kanggo ngasilake pitakon, bisa nggawe indeks kanggo macem-macem atribut sing disimpen, kanthi efisien nyedhiyakake panyimpenan obyek binar sing gedhe, ndhukung logging operasi kanggo ngganti lan nambah data menyang database, bisa bisa ing sesuai karo paradigma Map / Ngurangi, ndhukung rΓ©plikasi lan construction saka konfigurasi fault-toleran.

MongoDB duwe alat sing dibangun kanggo nyediakake sharding (nyebarake sakumpulan data ing server adhedhasar kunci tartamtu), kanthi kombinasi replikasi, ngidini sampeyan mbangun kluster panyimpenan kanthi skala horisontal sing ora ana titik kegagalan (gagal). saka sembarang simpul ora mengaruhi operasi database), Recovery otomatis sawise Gagal lan transfer beban saka simpul gagal. Nggedhekake kluster utawa ngowahi siji server dadi kluster rampung tanpa mandheg database kanthi mung nambah mesin anyar.

Fitur saka release anyar:

  • Koleksi sing ditambahake kanggo data ing wangun seri wektu (koleksi seri wektu), dioptimalake kanggo nyimpen irisan nilai parameter sing direkam ing interval tartamtu (wektu lan sakumpulan nilai sing cocog karo wektu iki). Kebutuhan kanggo nyimpen data kasebut muncul ing sistem pemantauan, platform finansial, lan sistem kanggo negara sensor polling. Nggarap data seri wektu ditindakake kaya koleksi dokumen biasa, nanging indeks lan cara panyimpenan kanggo wong-wong mau dioptimalake kanthi njupuk referensi wektu, sing bisa nyuda konsumsi ruang disk kanthi signifikan, nyuda wektu tundha nindakake pitakon lan ngaktifake data wektu nyata. analisis.

    MongoDB nganggep koleksi kasebut minangka tampilan sing bisa ditulis lan ora bisa diwujudake sing dibangun ing koleksi internal sing, nalika dilebokake, nglumpukake data seri wektu kanthi otomatis dadi format panyimpenan sing dioptimalake. Ing kasus iki, saben rekaman adhedhasar wektu dianggep minangka dokumen kapisah nalika dijaluk. Data diurutake kanthi otomatis lan diindeks miturut wektu (ora perlu nggawe indeks wektu kanthi jelas).

  • Dhukungan ditambahake kanggo operator jendhela (fungsi analitis) sing ngidini sampeyan nindakake tumindak kanthi set dokumen tartamtu ing koleksi kasebut. Ora kaya fungsi agregat, fungsi jendhela ora ambruk set diklompokakΓ©, nanging luwih ongko adhedhasar isi saka "jendhela" sing kalebu siji utawa luwih dokumen saka set asil. Kanggo ngapusi subset saka dokumen, diajokake tataran $setWindowFields anyar, karo sampeyan bisa, contone, nemtokake beda antarane rong dokumen ing koleksi, ngetung peringkat sales, lan nganalisa informasi ing seri wektu Komplek.
  • Dhukungan ditambahake kanggo versi API, sing ngidini sampeyan ngubungake aplikasi menyang negara API tartamtu lan ngilangi risiko sing ana gandhengane karo kemungkinan nglanggar kompatibilitas mundur nalika pindhah menyang rilis DBMS anyar. Versi API misahake siklus urip aplikasi saka siklus urip DBMS lan ngidini pangembang nggawe owah-owahan ing aplikasi nalika ana perlu kanggo nggunakake fitur anyar, lan ora nalika pindhah menyang versi anyar saka DBMS.
  • Dhukungan ditambahake kanggo mekanisme Live Resharding, sing ngidini sampeyan ngganti tombol shard sing digunakake kanggo segmentasi ing fly tanpa mandheg DBMS.
  • Kemungkinan kanggo enkripsi lapangan ing sisih klien wis ditambahi (Enkripsi Tingkat Lapangan Klien-Sisih). Saiki sampeyan bisa ngatur maneh saringan audit lan muter sertifikat x509 tanpa mungkasi DBMS. Dhukungan ditambahake kanggo ngonfigurasi suite cipher kanggo TLS 1.3.
  • Cangkang baris perintah anyar, MongoDB Shell (mongosh), diusulake, sing dikembangake minangka proyek kapisah, ditulis ing JavaScript nggunakake platform Node.js lan disebarake ing lisensi Apache 2.0. MongoDB Shell ndadekake bisa nyambung menyang DBMS, ngganti setelan lan ngirim pitakon. Ndhukung autocompletion cerdas kanggo ngetik cara, printah lan ekspresi MQL, nyorot sintaks, bantuan kontekstual, parsing pesen kesalahan lan kemampuan kanggo nggedhekake fungsi liwat tambahan. Bungkus CLI "mongo" lawas wis ora digunakake lan bakal dicopot ing rilis sing bakal teka.
    DBMS MongoDB 5.0 sing berorientasi dokumen kasedhiya
  • Operator anyar wis ditambahake: $count, $dateAdd, $dateDiff, $dateSubtract, $sampleRate lan $rand.
  • Mesthekake yen indeks digunakake nalika nggunakake operator $eq, $lt, $lte, $gt lan $gte ing ekspresi $expr.
  • Agregat, golek, findAndModify, nganyari, mbusak printah lan db.collection.aggregate (), db.collection.findAndModify (), db.collection.update () lan db.collection.remove () cara saiki ndhukung "ayo. "Pilihan kanggo nemtokake dhaptar variabel sing nggawe perintah luwih bisa diwaca kanthi misahake variabel saka badan panyuwunan.
  • Operasi temokake, ngitung, mbedakake, aggregate, mapReduce, listCollections, lan listIndexes ora diblokir maneh yen operasi sing njupuk kunci eksklusif ing koleksi dokumen mlaku bebarengan.
  • Minangka bagΓ©an saka inisiatif kanggo mbusak istilah politis salah, printah isMaster lan cara db.isMaster () wis diganti jeneng hello lan db.hello ().
  • Skema penomoran rilis wis diganti lan transisi wis digawe menyang jadwal rilis sing bisa ditebak. Setaun sepisan bakal ana rilis sing signifikan (5.0, 6.0, 7.0), saben telung wulan rilis penengah kanthi fitur-fitur anyar (5.1, 5.2, 5.3) lan, yen perlu, nganyari koreksi kanthi koreksi bug lan kerentanan (5.1.1, 5.1.2). .5.1.3 , 5.1). Rilis interim bakal mbangun fungsi kanggo rilis utama sabanjure, yaiku. MongoDB 5.2, 5.3, lan 6.0 bakal nyedhiyakake fitur anyar kanggo rilis MongoDB XNUMX.

Source: opennet.ru

Add a comment