Megosztás a következőn keresztül:


DocumentDB: A Open-Source motor, amely az Azure Cosmos DB-t hajtja a MongoDB vCore-hoz

A MongoDB-hez készült Azure Cosmos DB vCore a DocumentDB-re, egy nyílt forráskódú dokumentumadatbázis-platformra épül. Ez a cikk áttekintést nyújt a DocumentDB-ről, annak funkcióiról, architektúrájáról, valamint arról, hogyan járulhat hozzá ehhez a technológiához vagy hogyan használhatja azt.

Mi az a DocumentDB?

A DocumentDB egy teljesen megengedő, nyílt forráskódú platform a PostgreSQL-motorra épülő dokumentumadattárakhoz. Ez a MongoDB virtuális maghoz készült Azure Cosmos DB alapja, amely hatékony és rugalmas megoldást nyújt a NoSQL-adatbázis igényeihez.

A DocumentDB egy igazán Open-Source MongoDB-implementáció

Más, korlátozó licenccel (például SSPL) rendelkező MongoDB-motorokkal ellentétben a DocumentDB a megengedő MIT-licencet használja. Ez azt jelenti, hogy a fejlesztők teljes körűen szabadon használhatják, módosíthatják és terjesztheti a szoftvert kereskedelmi licencdíjak vagy használati korlátozások nélkül. Ellentétben a MongoDB kiszolgálóoldali nyilvános licencének (SSPL), amely korlátozhatja bizonyos felhasználásokat, a DocumentDB MIT-licence garantálja a valódi nyílt forráskódú szabadságot.

A DocumentDB többfelhős és Vendor-Agnostic

A DocumentDB hordozható, interoperábilis megoldást kínál a dokumentumadattárakhoz. A PostgreSQL-re épülő alkalmazás lehetővé teszi a fejlesztők számára, hogy alkalmazásaikat különböző felhőszolgáltatókon vagy a helyszínen helyezzék üzembe, elkerülve a szállítók zárolását. Ez a rugalmasság lehetővé teszi a szervezetek számára, hogy az adatbázis képességeinek veszélyeztetése nélkül válasszák ki az igényeiknek leginkább megfelelő infrastruktúrát.

DocumentDB a PostgreSQL-re épül, amely a NoSQL-adatbázisok Game-Changer-ja.

Mivel a NoSQL és a relációs adatbázisok közötti különbség elmosódottabbá válik, a DocumentDB áthidalja ezt a rést, hogy kiváló dokumentumadatbázis-élményt biztosítson a legtöbb méretezhető számítási feladathoz. Egyesíti mindkét oldal erősségeit, és biztosítja a NoSQL-adatbázisokhoz általában kapcsolódó rugalmasságot és méretezhetőséget, miközben kihasználja a PostgreSQL erejét és széles körű funkciókészletét , amely ma az egyik legelterjedtebb és legelismertebb nyílt forráskódú adatbázis. Ez az alap robusztusságot, megbízhatóságot és hozzáférést biztosít a PostgreSQL eszközeit és bővítményeit biztosító ökoszisztémához. A fejlesztők élvezhetik a PostgreSQL folyamatos fejlődését és széles körű közösségi támogatását, miközben élvezhetik a dokumentum-adatbázisok rugalmasságát.

Főbb funkciók

A DocumentDB számos kulcsfontosságú funkciót kínál, amelyek robusztus választássá teszik a dokumentumadatbázis-műveletekhez:

  • BSON-dokumentum elemzése és kezelése: A bináris JSON-dokumentumok (BSON) hatékony kezelése a beágyazás minden szintjén.
  • Speciális indexelési képességek: Egymezős, többkulcsos, összetett, szöveges és térinformatikai indexek támogatása.
  • Vektorkeresési lekérdezések: A pg_vector PostgreSQL-bővítmény biztosítja a különböző AI- és gépi tanulási alkalmazásokat.
  • Hitelesítési mechanizmus: Tartalmazza a SCRAM (Salted Challenge Response Authentication Mechanism) hitelesítést.
  • Térinformatikai lekérdezések: A PostGIS-bővítmény képességeinek használata.
  • Teljes decimális128 támogatás: Az Intel lebegőpontos matematikai kódtára működteti.
  • Regex-támogatás: A PCRE2 projekt használata

Építészet

A DocumentDB két elsődleges összetevőből áll:

  1. pg_documentdb_core: Egy egyéni PostgreSQL-bővítmény, amely optimalizálja a BSON adattípus-támogatását a PostgreSQL-ben.
  2. pg_documentdb_api: A CRUD-műveleteket, lekérdezési funkciókat és indexkezelést implementáló adatsík.

Ez az architektúra lehetővé teszi, hogy a PostgreSQL-motor tetején egy végpontok közötti NoSQL-adatbázis felhasználói élményt alakítson ki.

Hozzájárulás a DocumentDB-hez

Nyílt forráskódú projektként a DocumentDB üdvözli a közösség hozzájárulását. Az alábbiakkal járulhat hozzá:

  • A GitHubon csillagok hozzáadása, fork készítése, és pull kérések elküldése
  • Jelentéskészítési problémák vagy fejlesztési javaslatok
  • Részvétel a Microsoft OSS Discord-kiszolgálón található #documentdb csatornán folytatott megbeszéléseken

A DocumentDB használatának első lépései

A DocumentDB helyi használatának megkezdése:

1. Telepítse a Dockert.

2. Klónozza a DocumentDB-adattárat.

git clone https://github.com/microsoft/documentdb.git

3. Hozza létre a Docker-lemezképet. Keresse meg a klónozott adattárat.

docker build . -f .devcontainer/Dockerfile -t documentdb 

4. Futtassa a Docker-lemezképet konténerként.

docker run -v $(pwd):/home/documentdb/code -it documentdb /bin/bash 

5. Hozza létre és telepítse a bináris fájlokat.

cd code
make
sudo make install

6. Inicializálja a DocumentDB-kiszolgálót, és kezelje a függőségeket.

./scripts/start_oss_server.sh -t documentdb

7. Csatlakozzon a psql-felülethez.

psql -p 9712 -h localhost -d postgres

A lépések elvégzése után most már mind a DocumentDB helyi használatára van beállítva.

Gyakori kérdések

Mi a DocumentDB, és hogyan kapcsolódik a MongoDB-hez készült Azure Cosmos DB virtuális maghoz?

A DocumentDB egy teljesen megengedő, nyílt forráskódú platform a PostgreSQL-motorra épülő dokumentumadattárakhoz. Ez a MongoDB virtuális maghoz készült Azure Cosmos DB alapja, amely hatékony és rugalmas megoldást nyújt a NoSQL-adatbázis igényeihez.

Hogyan viszonyul a DocumentDB licencelése más MongoDB-implementációkhoz?

A DocumentDB a megengedő MIT-licencet használja, amely lehetővé teszi a fejlesztők számára, hogy kereskedelmi licencdíjak vagy használati korlátozások nélkül használhassák, módosíthassák és terjesztsék a szoftvert. Ez ellentétben áll néhány MongoDB-szolgáltató kiszolgálóoldali nyilvános licencével (SSPL), amely korlátozhatja bizonyos felhasználásokat.

Használható a DocumentDB különböző felhőszolgáltatók között?

Igen, a DocumentDB többfelhős és szállítói agnosztikus. A PostgreSQL-re épülő megoldás lehetővé teszi a fejlesztők számára, hogy alkalmazásaikat különböző felhőszolgáltatókon vagy helyszíni eszközökön helyezzék üzembe, elkerülve a szállítók zárolását, és rugalmasságot biztosítanak az igényeiknek leginkább megfelelő infrastruktúra kiválasztásában.

Mik a DocumentDB főbb jellemzői?

A DocumentDB számos kulcsfontosságú funkciót kínál, többek között a BSON-dokumentumok elemzését és kezelését, a speciális indexelési képességeket (egymezős, többkulcsos, összetett, szöveg- és térinformatikai), a pg_vector által működtetett vektorkeresési lekérdezéseket, az olyan hitelesítési mechanizmusokat, mint az SCRAM, a PostGIS-t használó térinformatikai lekérdezések, a teljes Decimális128-támogatás és a PCRE2 használatával történő regex-támogatás.

Hogyan járulhatnak hozzá a fejlesztők a DocumentDB-hez?

A fejlesztők közreműködhetnek a DocumentDB-ben a GitHubon történő csillagozással, elágaztatással, lekérési kérelmek beküldésével, problémák jelentésével vagy fejlesztések javaslásával, valamint részvétellel a Microsoft OSS Discord szerver #documentdb csatornáján folytatott megbeszéléseken.