DBMS MongoDB 5.0 ti o wa lori iwe-ipamọ

Itusilẹ ti iwe-iṣakoso DBMS MongoDB 5.0 ti gbekalẹ, eyiti o wa niche laarin awọn ọna ṣiṣe iyara ati iwọn ti o nṣiṣẹ data ni ọna kika bọtini/iye, ati awọn DBMS ti o ni ibatan ti o ṣiṣẹ ati rọrun lati ṣe awọn ibeere. Koodu MongoDB ni a kọ sinu C ++ ati pinpin labẹ iwe-aṣẹ SSPL, eyiti o da lori iwe-aṣẹ AGPLv3, ṣugbọn ko ṣii, nitori pe o ni ibeere iyasoto lati firanṣẹ labẹ iwe-aṣẹ SSPL kii ṣe koodu ohun elo funrararẹ, ṣugbọn tun orisun. koodu ti gbogbo awọn paati ti o ni ipa ninu ipese iṣẹ awọsanma.

MongoDB ṣe atilẹyin titoju awọn iwe aṣẹ ni ọna kika bii JSON, ni ede ti o rọ ni deede fun ṣiṣẹda awọn ibeere, le ṣẹda awọn atọka fun ọpọlọpọ awọn abuda ti o fipamọ, pese daradara ni ibi ipamọ ti awọn nkan alakomeji nla, ṣe atilẹyin gedu awọn iṣẹ fun iyipada ati fifi data kun si ibi ipamọ data, le ṣiṣẹ ni ibamu pẹlu Map/Dinku paragim, ṣe atilẹyin ẹda ati ikole awọn atunto ọlọdun ẹbi.

MongoDB ni awọn irinṣẹ ti a ṣe sinu rẹ fun ipese sharding (pinpin data kan kọja awọn olupin ti o da lori bọtini kan pato), ni apapọ pẹlu atunwi, gbigba ọ laaye lati kọ iṣupọ ibi-itọju ti iwọn petele ninu eyiti ko si aaye ikuna kan (ikuna naa ti eyikeyi ipade ko ni ipa lori isẹ ti database), imularada laifọwọyi lẹhin ikuna ati gbigbe fifuye lati oju ipade ti o kuna. Faagun iṣupọ kan tabi yiyipada olupin kan sinu iṣupọ jẹ ṣiṣe laisi idaduro data data nipa fifi awọn ẹrọ tuntun kun.

Awọn ẹya ara ẹrọ ti idasilẹ tuntun:

  • Awọn ikojọpọ ti a ṣafikun fun data ni irisi jara akoko (awọn ikojọpọ jara akoko), iṣapeye fun titoju awọn ege ti awọn iye paramita ti o gbasilẹ ni awọn aaye arin kan (akoko ati ṣeto awọn iye ti o baamu si akoko yii). Iwulo lati fipamọ iru data waye ni awọn eto ibojuwo, awọn iru ẹrọ inawo, ati awọn eto fun awọn ipinlẹ sensọ idibo. Ṣiṣẹ pẹlu data jara akoko ni a ṣe bi pẹlu awọn ikojọpọ iwe lasan, ṣugbọn awọn atọka ati ọna ibi ipamọ fun wọn jẹ iṣapeye ni akiyesi itọkasi akoko, eyiti o le dinku agbara aaye disk ni pataki, dinku awọn idaduro ni ṣiṣe awọn ibeere ati mu data akoko gidi ṣiṣẹ. onínọmbà.

    MongoDB ṣe itọju iru awọn ikojọpọ bi kikọ, awọn iwo ti kii ṣe ohun elo ti a ṣe lori awọn akojọpọ inu ti, nigba ti a ba fi sii, ṣe akojọpọ awọn data lẹsẹsẹ akoko laifọwọyi sinu ọna kika ibi ipamọ iṣapeye. Ni idi eyi, igbasilẹ ti o da lori akoko kọọkan jẹ itọju bi iwe ti o yatọ nigbati o ba beere. Data ti wa ni pipaṣẹ laifọwọyi ati atọka nipasẹ akoko (ko si iwulo lati ṣẹda awọn atọka akoko ni gbangba).

  • Atilẹyin ti a ṣafikun fun awọn oniṣẹ window (awọn iṣẹ itupalẹ) ti o gba ọ laaye lati ṣe awọn iṣe pẹlu ṣeto awọn iwe aṣẹ kan pato ninu ikojọpọ. Ko dabi awọn iṣẹ apapọ, awọn iṣẹ window ko ṣubu ni akojọpọ akojọpọ, ṣugbọn dipo apapọ ti o da lori awọn akoonu ti “window” kan ti o pẹlu ọkan tabi diẹ sii awọn iwe aṣẹ lati inu abajade abajade. Lati ṣe afọwọyi ipin ti awọn iwe aṣẹ, ipele $setWindowFields tuntun ti wa ni idamọran, pẹlu eyiti o le, fun apẹẹrẹ, pinnu awọn iyatọ laarin awọn iwe aṣẹ meji ninu ikojọpọ, ṣe iṣiro awọn ipo tita, ati ṣe itupalẹ alaye ni jara akoko idiju.
  • Atilẹyin ti a ṣafikun fun ẹya API, eyiti o fun ọ laaye lati di ohun elo kan si ipo API kan ati imukuro awọn eewu ti o nii ṣe pẹlu irufin ti o ṣeeṣe ti ibamu sẹhin nigbati o nlọ si awọn idasilẹ DBMS tuntun. API ti ikede ya awọn ohun elo igbesi aye ọmọ lati DBMS igbesi aye ati ki o gba awọn olutẹsiwaju lati ṣe awọn ayipada si awọn ohun elo nigba ti o wa ni a nilo lati lo titun awọn ẹya ara ẹrọ, ki o si ko nigba ti gbigbe si titun kan ti ikede ti awọn DBMS.
  • Atilẹyin ti a ṣafikun fun ẹrọ Resharding Live, eyiti o fun ọ laaye lati yi awọn bọtini shard ti a lo fun ipin lori fifo laisi idaduro DBMS naa.
  • Awọn aye ti o ṣeeṣe fun awọn aaye fifi ẹnọ kọ nkan ni ẹgbẹ alabara ti pọ si (Ìsekóòdù Ipele aaye Onibara). O ṣee ṣe ni bayi lati tunto awọn asẹ iṣayẹwo ati yi awọn iwe-ẹri x509 pada laisi idaduro DBMS naa. Atilẹyin ti a ṣafikun fun atunto suite cipher fun TLS 1.3.
  • Ikarahun laini aṣẹ tuntun kan, MongoDB Shell (mongosh), ni a dabaa, eyiti o dagbasoke bi iṣẹ akanṣe lọtọ, ti a kọ sinu JavaScript nipa lilo pẹpẹ Node.js ati pinpin labẹ iwe-aṣẹ Apache 2.0. MongoDB Shell jẹ ki o ṣee ṣe lati sopọ si DBMS, yi awọn eto pada ki o firanṣẹ awọn ibeere. Ṣe atilẹyin adaṣe adaṣe ọlọgbọn fun titẹ awọn ọna titẹ sii, awọn aṣẹ ati awọn ikosile MQL, fifi sintasi sintasi, iranlọwọ ọrọ-ọrọ, awọn ifiranṣẹ aṣiṣe sisọ ati agbara lati faagun iṣẹ ṣiṣe nipasẹ awọn afikun. Ohun ipari “mongo” CLI atijọ ti jẹ idiwọ ati pe yoo yọkuro ni itusilẹ ọjọ iwaju.
    DBMS MongoDB 5.0 ti o wa lori iwe-ipamọ
  • Awọn oniṣẹ tuntun ti ni afikun: $count, $dateAdd, $dateDiff, $dateSubtract, $sampleRate ati $rand.
  • Ṣe idaniloju pe a lo awọn atọka nigba lilo $eq, $lt, $lte, $gt ati awọn oniṣẹ $gte laarin ikosile $expr.
  • Apapọ, wa, riAndModify, imudojuiwọn, paarẹ awọn aṣẹ ati db.collection.aggregate (), db.collection.findAndModify (), db.collection.update () ati db.collection.remove () awọn ọna bayi ṣe atilẹyin “jẹ ki “aṣayan lati ṣalaye atokọ ti awọn oniyipada ti o jẹ ki awọn aṣẹ jẹ kika diẹ sii nipa yiya sọtọ awọn oniyipada lati ara ibeere.
  • Wa, ka, pato, apapọ, mapReduce, Akojọ Awọn akojọpọ, ati awọn iṣẹ atokọ ko ṣe dina mọ ti iṣẹ ṣiṣe ti o gba titiipa iyasoto lori ikojọpọ iwe kan n ṣiṣẹ ni afiwe.
  • Gẹgẹbi apakan ti ipilẹṣẹ lati yọkuro awọn ofin ti ko tọ si iṣelu, aṣẹ isMaster ati ọna db.isMaster () ti ni lorukọ hello ati db.hello ().
  • Ero nọmba itusilẹ ti yipada ati pe a ti ṣe iyipada si iṣeto itusilẹ asọtẹlẹ kan. Ni ẹẹkan ọdun kan yoo wa itusilẹ pataki (5.0, 6.0, 7.0), ni gbogbo oṣu mẹta awọn idasilẹ agbedemeji pẹlu awọn ẹya tuntun (5.1, 5.2, 5.3) ati, bi o ṣe pataki, awọn imudojuiwọn atunṣe pẹlu awọn atunṣe kokoro ati awọn ailagbara (5.1.1, 5.1.2) .5.1.3, 5.1). Awọn idasilẹ igba diẹ yoo kọ iṣẹ ṣiṣe fun itusilẹ pataki ti nbọ, i.e. MongoDB 5.2, 5.3, ati 6.0 yoo pese awọn ẹya tuntun fun itusilẹ MongoDB XNUMX.

orisun: opennet.ru

Fi ọrọìwòye kun