I-DBMS MongoDB 5.0 egxile kumadokhumenti iyatholakala

Ukukhishwa kwe-DBMS MongoDB 5.0 egxile kumadokhumenti kuyethulwa, ethatha indawo ephakathi kwezinhlelo ezisheshayo nezisheshayo ezisebenzisa idatha ngefomethi engukhiye/inani, kanye nama-DBMS ahlobene asebenzayo futhi kulula ukwenza imibuzo. Ikhodi ye-MongoDB ibhalwe ngo-C++ futhi yasakazwa ngaphansi kwelayisensi ye-SSPL, esekelwe kulayisensi ye-AGPLv3, kodwa ayivuliwe, njengoba iqukethe imfuneko ebandlululayo yokulethwa ngaphansi kwelayisensi ye-SSPL hhayi ikhodi yesicelo ngokwayo, kodwa futhi umthombo. ikhodi yazo zonke izingxenye ezihilelekile ekuhlinzekweni kwesevisi yamafu.

I-MongoDB isekela ukugcinwa kwamadokhumenti ngefomethi efana ne-JSON, inolimi oluvumelana nezimo ukuze ikhiqize imibuzo, ingakha izinkomba zezici ezihlukahlukene ezigciniwe, inikeze ngokuyimpumelelo isitoreji sezinto ezinkulu kanambambili, isekela ukugawulwa kwemisebenzi yokuguqula nokwengeza idatha kusizindalwazi, sebenza ngokuhambisana ne-paradigm Map/Nciphisa, isekela ukuphindaphinda kanye nokwakhiwa kokucushwa okubekezelela amaphutha.

I-MongoDB inamathuluzi akhelwe ngaphakathi okunikeza i-sharding (ukusabalalisa isethi yedatha kuwo wonke amaseva ngokusekelwe kukhiye othize), kuhlanganiswe nokuphindaphinda, okukuvumela ukuthi wakhe iqoqo lokugcina elivundlile lapho kungekho khona iphuzu elilodwa lokwehluleka (ukwehluleka. kwanoma iyiphi i-node akuthinti ukusebenza kwe-database), ukutakula okuzenzakalelayo ngemva kokwehluleka nokudluliselwa komthwalo kusuka ku-node ehlulekile. Ukwandisa iqoqo noma ukuguqula iseva eyodwa ibe iqoqo kwenziwa ngaphandle kokumisa isizindalwazi ngokungeza nje imishini emisha.

Izici zokukhishwa okusha:

  • Kungezwe amaqoqo edatha ngendlela yochungechunge lwesikhathi (amaqoqo ochungechunge lwesikhathi), alungiselelwe ukugcina izingcezu zamanani epharamitha aqoshwe ngezikhathi ezithile (isikhathi nesethi yamanani ahambisana nalesi sikhathi). Isidingo sokugcina idatha enjalo sivela ezinhlelweni zokuqapha, izinkundla zezimali, nezinhlelo zezinzwa zezinzwa zokuvota. Ukusebenza ngedatha yochungechunge lwesikhathi kwenziwa njengamaqoqo ajwayelekile amadokhumenti, kepha izinkomba kanye nendlela yokugcina yazo ithuthukisiwe kucatshangelwa ireferensi yesikhathi, enganciphisa kakhulu ukusetshenziswa kwesikhala sediski, inciphise ukubambezeleka ekusebenziseni imibuzo futhi inike amandla idatha yesikhathi sangempela. ukuhlaziywa.

    I-MongoDB ithatha amaqoqo anjalo njengokubuka okubhalekayo, okungekhona okokusebenza okwakhelwe phezu kwamaqoqo angaphakathi okuthi, lapho afakiwe, aqoqe ngokuzenzakalelayo idatha yochungechunge lwesikhathi ibe ifomethi yesitoreji ethuthukisiwe. Kulokhu, irekhodi ngalinye elisekelwe esikhathini lithathwa njengedokhumenti ehlukile lapho licelwa. Idatha ihlelwa ngokuzenzakalelayo futhi ikhonjiswe ngesikhathi (asikho isidingo sokudala izinkomba zesikhathi ngokusobala).

  • Ukwesekwa okwengeziwe kwama-opharetha amawindi (imisebenzi yokuhlaziya) ekuvumela ukuthi wenze izenzo ngesethi ethile yamadokhumenti eqoqweni. Ngokungafani nemisebenzi ehlanganisiwe, imisebenzi yewindi ayigoqi isethi eqoqwe, kodwa ihlanganisa ngokusekelwe kokuqukethwe β€œkwewindi” elihlanganisa idokhumenti eyodwa noma amaningi avela kusethi yomphumela. Ukuze kusetshenziswe isethi engaphansi yamadokhumenti, kuhlongozwa isigaba esisha se-$setWindowFields, lapho ungakwazi khona, isibonelo, ukunquma umehluko phakathi kwamadokhumenti amabili eqoqweni, ubale amazinga okuthengisa, futhi uhlaziye ulwazi ochungechungeni lwesikhathi oluyinkimbinkimbi.
  • Usekelo olungeziwe lwenguqulo ye-API, ekuvumela ukuthi ubophe uhlelo lokusebenza kusimo esithile se-API futhi ususe ubungozi obuhlobene nokwephulwa okungenzeka kokwephulwa kokuhambisana okubuyela emuva uma uthuthela ekukhishweni okusha kwe-DBMS. Inguqulo ye-API ihlukanisa umjikelezo wempilo yohlelo lokusebenza kusukela kumjikelezo wempilo ye-DBMS futhi ivumela onjiniyela ukuthi benze izinguquko kuhlelo lokusebenza uma kunesidingo sokusebenzisa izici ezintsha, hhayi uma uthuthela enguqulweni entsha ye-DBMS.
  • Ukwesekwa okwengeziwe kwendlela yokwabelana kabusha bukhoma, okukuvumela ukuthi uguqule okhiye be-shard abasetshenziselwa ukuhlukanisa endizeni ngaphandle kokumisa i-DBMS.
  • Amathuba okubhala ngekhodi izinkambu ohlangothini lweklayenti anwetshiwe (Ukubethela Kweleveli Yensimu Yeklayenti). Manje sekungenzeka ukuthi ulungise kabusha izihlungi zokuhlola futhi uzungezise izitifiketi ze-x509 ngaphandle kokumisa i-DBMS. Usekelo olungeziwe lokumisa i-cipher suite ye-TLS 1.3.
  • Kuhlongozwa igobolondo lomugqa womyalo omusha, i-MongoDB Shell (mongosh), ethuthukiswayo njengephrojekthi ehlukile, ebhalwe nge-JavaScript kusetshenziswa inkundla ye-Node.js futhi isatshalaliswe ngaphansi kwelayisensi ye-Apache 2.0. I-MongoDB Shell yenza kube nokwenzeka ukuxhuma ku-DBMS, shintsha izilungiselelo futhi uthumele imibuzo. Isekela ukuqedela okuzenzakalelayo okuhlakaniphile kwezindlela zokufaka, imiyalo nezinkulumo ze-MQL, ukugqamisa i-syntax, usizo lwengqikithi, imilayezo yamaphutha kanye nekhono lokwandisa ukusebenza ngezengezo. Isisonga esidala se-"mongo" CLI sihoxisiwe futhi sizokhishwa ekukhishweni okuzayo.
    I-DBMS MongoDB 5.0 egxile kumadokhumenti iyatholakala
  • Ama-opharetha amasha angeziwe: $count, $dateAdd, $dateDiff, $dateSubtract, $sampleRate kanye ne-$rand.
  • Iqinisekisa ukuthi izinkomba ziyasetshenziswa uma kusetshenziswa i-$eq, $lt, $lte, $gt kanye nama-opharetha we-$gte ngaphakathi kwenkulumo ethi $expr.
  • Inhlanganisela, thola, tholaAndModify, buyekeza, susa imiyalo kanye ne-db.collection.aggregate(), db.collection.findAndModify(), db.collection.update() kanye db.collection.remove() izindlela manje zisekela β€œvumela ” inketho yokuchaza uhlu lwezinto eziguquguqukayo ezenza imiyalo ifundeke kakhudlwana ngokuhlukanisa okuguquguqukayo endikimbeni yesicelo.
  • Thola, bala, hlukanisa, hlanganisa, Nciphisa imephu, yenza uhluAmaqoqo, futhi uhluIzikhombo azisavimbeli uma umsebenzi othatha ukhiye okhethekile eqoqweni ledokhumenti usebenza ngokuhambisana.
  • Njengengxenye yesinyathelo sokususa amagama angalungile ngokwepolitiki, umyalo we-isMaster nendlela ethi db.isMaster() iqanjwe kabusha ngokuthi sawubona nokuthi db.hello().
  • Uhlelo lokukhishwa kwezinombolo lushintshiwe futhi kwenziwa uguquko oluya kushejuli yokukhishwa ebikezelwe. Kanye ngonyaka kuzoba nokukhishwa okubalulekile (5.0, 6.0, 7.0), njalo ezinyangeni ezintathu ukukhishwa okumaphakathi okunezici ezintsha (5.1, 5.2, 5.3) futhi, njengoba kudingekile, izibuyekezo zokulungisa ezinokulungiswa kweziphazamisi nokuba sengozini (5.1.1, 5.1.2) .5.1.3 , 5.1). Ukukhishwa kwesikhashana kuzokwakha ukusebenza kokukhishwa okukhulu okulandelayo, i.e. I-MongoDB 5.2, 5.3, kanye ne-6.0 izohlinzeka ngezici ezintsha zokukhishwa kwe-MongoDB XNUMX.

Source: opennet.ru

Engeza amazwana