Jaký je dotazovací jazyk v DocumentDB (v Azure)?

DocumentDB je opensourcová databáze zaměřená na dokumenty, která používá dotazovací jazyk MongoDB (MQL) k dotazování a manipulaci s daty. MQL poskytuje bohatou a výraznou syntaxi pro práci s dokumenty typu JSON uloženými ve formátu BSON (Binary JSON). Tento jazyk je navržený tak, aby přirozeně fungoval s hierarchickými strukturami dokumentů, které podporují jednoduché dotazy i složité agregace. Jako široce přijímaný dotazovací jazyk v ekosystému databází dokumentů umožňuje MQL vývojářům aplikovat stávající znalosti MongoDB při práci se škálovatelným flexibilním úložným modulem DocumentDB.

Model

V DocumentDB se MQL staví kolem modelu dokumentu, kde se data ukládají jako kolekce dokumentů, nikoli jako řádky v tabulkách. Dotazy se vyjadřují pomocí deklarativní syntaxe s operátory, které začínají znakem dolaru ($), například $match, $projecta $group. Tento přístup umožňuje vývojářům filtrovat, transformovat a agregovat data prostřednictvím kanálu operací, které se dají skládat a opakovaně používat.

Jazyk nativně podporuje vnořené dokumenty a pole, což vývojářům umožňuje pracovat přímo se složitými hierarchickými datovými strukturami bez nutnosti spojení nebo normalizace. MQL poskytuje komplexní sadu operátorů pro porovnání, logické operace, manipulaci s poli a agregaci. Dotazovací stroj DocumentDB používá indexy k efektivnímu spouštění dotazů napříč velkými datovými sadami, takže je vhodný pro provozní i analytické úlohy.

Compatibility

Filozofie kompatibility DocumentDB se zaměřuje na poskytování komplexní podpory jazyka MQL (MongoDB Query Language) a zachování flexibility pro vývoj ekosystému databází dokumentů. Systém vyhodnocuje kompatibilitu měřením podpory napříč klíčovými kategoriemi operátorů, včetně fází agregace, operátorů agregace, operátorů dotazu a projekce a aktualizačních operátorů. Tato kompatibilita zajišťuje, že můžete použít stávající znalosti MongoDB a migrovat aplikace s minimálním třením, protože většina standardních konstruktorů MQL beze změny funguje beze změny.

Při vytváření aplikací pomocí DocumentDB získáte výhodu transparentní kompatibility, která eliminuje potřebu překladu dotazů nebo přizpůsobení kódu. Existující klientské ovladače MongoDB a sady SDK (Software Development Kit) můžete použít přímo, protože DocumentDB implementuje wire protocol MongoDB. Vaše typické operace CRUD, kanály agregace a strategie indexu se přenášejí přímo ze systémů založených na MongoDB, takže se můžete soustředit na aplikační logiku místo úprav specifických pro databázi. I když DocumentDB nepřetržitě rozšiřuje pokrytí svého operátora, stabilní základ zajišťuje, aby vaše aplikace zůstaly přenosné a udržovatelné.