A MongoDB 6.0 dokumentum-orientált DBMS elérhető

Egy év fejlesztés után bemutatásra került a MongoDB 6.0 dokumentum-orientált DBMS, amely a gyors és skálázható kulcs/érték formátumban működő rendszerek és a relációs DBMS-ek közötti rést foglalja el, amelyek funkcionálisak és könnyen használhatók a lekérdezések megformálásához. A MongoDB kódját C++ nyelven írták, és SSPL licenc alatt terjesztik, amely az AGPLv3 licencen alapul, de nem nyílt forráskódú, mivel diszkrét követelményt tartalmaz a SSPL licenc alá történő szállításra nemcsak az alkalmazás kódját, hanem az összes olyan összetevő forráskódját is, amelyek részt vesznek a felhőszolgáltatás biztosításában.

A MongoDB támogatja a JSON-szerű formátumban tárolt dokumentumok tárolását, elég rugalmas nyelvet kínál a lekérdezések megformálására, képes indexeket létrehozni a különböző tárolt attribútumokhoz, hatékonyan biztosítja a nagyméretű binárisan tárolt objektumok tárolását, támogatja az adatbázisban történő adatváltozások és hozzáadások naplózását, a Map/Reduce paradigma szerint tud működni, támogatja a replikációt és a hibamentes konfigurációk felépítését.

A MongoDB beépített eszközöket kínál a szegmentálás biztosítására (az adathalmazon alapuló adatok elosztása kiszolgálókra meghatározott kulcs alapján), amely a replikációval kombinálva lehetővé teszi a vízszintesen skálázható tároló klaszter felépítését, amelyben nincs egyetlen hibapont (bármely csomópont meghibásodása nem befolyásolja az adatbázis működését), automatikus hibaelhárítást és terhelés átvitelét támogatja a hibás csomópontból. A klaszter bővítése vagy az egyik átalakítása a szerver a klaszterré az adatbázis leállítása nélkül, egyszerű új gépek hozzáadásával történik.

Az új verzió főbb jellemzői:

  • Lehetővé vált titkosítva tárolt adatokra kiterjedő lekérdezések kidolgozása (Queryable Encryption). Az adatok a felhasználó oldalán kerülnek dekódolásra, és a lekérdezés feldolgozása során titkosítva maradnak (a lekérdezés titkosított adatokon fut, anélkül hogy azokat előzetesen dekódolná). Jelenlegi formában csak összehasonlító kifejezések megadása megengedett a lekérdezések során, de a jövőben tervezzük a tartományok, előtagok, utótagok, részszövegek és más műveletek ellenőrzésének támogatását.
  • Kiterjesztettük az időszakos adatok tárolásával kapcsolatos lehetőségeket (time series collections), amelyeket a paraméterek értékeinek vágott értékeinek tárolására optimalizáltunk, amelyeket meghatározott időközönként rögzítenek (az idő és a számukra megfelelő értékek halmaza). Például az ilyen típusú adatok tárolására a monitorozó rendszerekben, pénzügyi platformokon és érzékelőállapot-nyilvántartó rendszerekben van szükség. Az új kiadás lehetővé teszi másodlagos és összetett indexek használatát az időszakos adatok gyűjteményeivel. További adatok, például földrajzi információk csatolásának támogatása is hozzá lett adva a távolság és a hely figyelembevételére. Növeltük az olvasás, a lekérdezések végrehajtásának és a rendezés teljesítményét.
  • Új eszközöket adtunk hozzá a változások követésére („változási folyamok”, API Change Streams), amellyel értesítéseket lehet küldeni az alkalmazásoknak az adatbázisban bekövetkező adatváltozásokról. A változásokról szóló információk valós időben érkeznek, és lehetővé teszik olyan alkalmazások létrehozását, amelyek reaktív és eseményalapú programozási módszereket használnak. Az eseményeket a watch módszer segítségével dolgozzuk fel, a szükséges események szűrésére és aggregálására pedig a $match, $project és $redact operátorok használhatók. Az új verzió lehetőséget biztosít a dokumentum előző és következő állapotának (például amikor a dokumentum törölve vagy módosítva lett) lekérdezésére. A DML (data manipulation language) használatával végzett műveleteken kívül a DDL (data definition language) műveletek, például indexek és gyűjtemények létrehozása és eltávolítása is támogatott. Hozzáadtunk értesítések szűrésére szolgáló eszközöket.
  • A $lookup és $graphlookup operátorokban teljes támogatást kaptak a particionált (sharded) adattárak. Az $lookup művelet teljesítménye optimalizálva lett, például a külső kulcsra vonatkozó index létezésével a kis dokumentumok összevetése most 5-10-szer gyorsabb, a nagy számú dokumentumok esetében pedig kétszer gyorsabb. Az index nélküli összevetések esetében a teljesítménynövekedés elérheti a 100-szoros gyorsulást.
  • Lehetőség nyílt összetett analitikai lekérdezések végrehajtására az adatmunka konzisztens pillanataival (snapshot). Az ilyen analitikai lekérdezések több szegmenst is lefedhetnek nagy elosztott MongoDB konfigurációkban.
  • Új operátorok, mint a $maxN, $minN és $lastN kerültek bevezetésre az adatmátrixban lévő értékek meghatározására, valamint a $sortArray operátor, amely lehetővé teszi a tömb elemeinek rendezését.
  • Jelentősen növekedett a szegmentálás hatékonysága. Az alapértelmezett blokk mérete a szegmentált gyűjteményhez 128 MB-ra nőtt. Bevezetésre került a configureCollectionBalancing parancs a szegmentált gyűjtemény töredezettség-mentesítésére.
  • A kliensoldali mezőszintű titkosításhoz (CSFLE) hozzáadva lett a KMIP-összeillő kulcsszolgáltatók támogatása.
  • Lehetőség támadt az auditnapló tömörítésére és titkosítására, amely tartalmazza az adatbázis felhasználóinak aktivitását.
  • Megvalósult a MongoDB klaszterek közötti adatkezelés kísérleti üzemmódja (Cluster-to-Cluster Sync).

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster