Freigeben über


MongoDB Query Language (MQL)-Kompatibilität in Azure DocumentDB

Azure DocumentDB bietet umfassende MongoDB Query Language (MQL)-Kompatibilität und kombiniert die vertrauten Features von MongoDB mit den Unternehmensfunktionen von Azure. Dieser Artikel bietet eine versionsweise Übersicht über MQL-Kompatibilität und Featureunterstützung in den Versionen 5.0-8.0, einschließlich Operatoren, Befehlen, Indizes und dem MongoDB-Drahtprotokoll. Anwendungen können ohne Codeänderungen ausgeführt werden, indem sie dieselben Clienttreiber, SDKs und Tools verwenden. Benutzer profitieren von der Skalierbarkeit, Sicherheit und Integration von Azure mit anderen Azure-Diensten.

Netzwerkprotokollunterstützung

Der Azure DocumentDB-Dienst verwendet das MongoDB-Drahtprotokoll, das eine nahtlose Kompatibilität mit vorhandenen Tools und Treibern bietet. Jeder Clienttreiber, der das MongoDB-Drahtprotokoll unterstützt, kann eine Verbindung mit Azure DocumentDB herstellen, sodass Anwendungen ohne Codeänderungen ausgeführt werden können.

Entwickler können dieselben Clienttreiber, Software Development Kits (SDKs) und Tools beibehalten. Als Benutzer erhalten Sie auch die Skalierbarkeit, Sicherheit und tiefe Integration von Azure in andere Dienste innerhalb der Azure-Plattform.

Unterstützung der Abfragesprache

Zusätzlich zur Protokollunterstützung bietet Azure DocumentDB umfassende Unterstützung für MongoDB-Abfragesprachenkonstrukte.

Kompatibilitätsphilosophie

Die allgemeine Produktkompatibilität wird bestimmt, indem die Anzahl der vom Dienst unterstützten MongoDB-Operatoren (Aggregationsstufen, Aggregationsoperatoren, Abfrage- und Projektionsoperatoren und Aktualisierungsoperatoren) ausgewertet wird. MongoDB-Befehle und Administratorvorgänge werden von dieser Berechnung ausgeschlossen, da Azure DocumentDB als PaaS-Angebot die meisten dieser Befehle intern unterstützt und die Notwendigkeit eines Benutzereingriffs eliminiert. Diese Befehle werden benutzern nicht offengelegt. Basierend auf Nutzungsmustern und Kundenfeedback steht jedoch eine Teilmenge häufig verwendeter Befehle zur Verfügung, um die Benutzererfahrung zu vereinfachen.

Die gesamte Produktkompatibilität liegt heute bei 99,02%. Die Kompatibilitätszusammenfassungstabelle unten enthält Details zur Unterstützung der einzelnen Operatortypen:

Total Unterstützt Prozentsatz
Aggregationsstufen 60 58 96.67%
Aggregationsoperatoren 181 181 100 %
Abfrage- und Projektionsoperatoren 45 44 97.78%
Operatoren aktualisieren 22 22 100 %

Der folgende Abschnitt enthält eine umfassende Aufschlüsselung der unterstützten Datenbankoperatoren, Befehle und mehr Features, die eine klare Übersicht über die Kompatibilität und Funktionalität des Produkts in verschiedenen Szenarien bieten.

Betriebspersonal

In der folgenden Tabelle sind die Operatoren aufgeführt, die derzeit in Azure DocumentDB unterstützt werden:

Kategorie Bediener Unterstützt (v5.0) Unterstützt (v6.0) Unterstützt (v7.0) Unterstützt (v8.0)
Vergleichsabfrageoperatoren $eq ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsabfrageoperatoren $gt ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsabfrageoperatoren $gte ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsabfrageoperatoren $in ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsabfrageoperatoren $lt ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsabfrageoperatoren $lte ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsabfrageoperatoren $ne ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsabfrageoperatoren $nin ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Logische Abfrageoperatoren $and ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Logische Abfrageoperatoren $not ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Logische Abfrageoperatoren $nor ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Logische Abfrageoperatoren $or ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Elementabfrageoperatoren $exists ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Elementabfrageoperatoren $type ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Abfrageoperatoren für die Auswertung $expr ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Abfrageoperatoren für die Auswertung $jsonSchema* ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Abfrageoperatoren für die Auswertung $mod ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Abfrageoperatoren für die Auswertung $regex ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Abfrageoperatoren für die Auswertung $text ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Abfrageoperatoren für die Auswertung $where Abgekündigt in Mongo Version 8.0
Räumliche Operatoren $geoIntersects ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $geoWithin ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $box ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $center ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $centerSphere ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $geometry ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $maxDistance ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $minDistance ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $polygon ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $near ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Räumliche Operatoren $nearSphere ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Abfrageoperatoren $all ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Abfrageoperatoren $elemMatch ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Abfrageoperatoren $size ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Abfrageoperatoren $bitsAllClear ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Abfrageoperatoren $bitsAllSet ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Abfrageoperatoren $bitsAnyClear ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Abfrageoperatoren $bitsAnySet ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Projektionsoperatoren $ ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Projektionsoperatoren $elemMatch ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Projektionsoperatoren $meta ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Projektionsoperatoren $slice ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Verschiedene Abfrageoperatoren $comment ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Verschiedene Abfrageoperatoren $rand ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Verschiedene Abfrageoperatoren $natural ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $currentDate ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $inc ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $min ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $max ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $mul ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $rename ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $set ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $setOnInsert ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Feldaktualisierung $unset ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $ ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $[] ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $[identifier] ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $addToSet ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $pop ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $pull ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $push ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $pullAll ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $each ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $position ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $slice ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Array-Aktualisierung $sort ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweiser Update-Operator $bit ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $abs ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $add ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $ceil ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $divide ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $exp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $floor ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $ln ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $log ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $log10 ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $mod ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $multiply ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $pow ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $round ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $sqrt ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $subtract ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für arithmetische Ausdrücke $trunc ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $arrayElemAt ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $arrayToObject ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $concatArrays ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $filter ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $firstN ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $in ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $indexOfArray ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $isArray ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $lastN ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $map ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $maxN ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $minN ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $objectToArray ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $range ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $reduce ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $reverseArray ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $size ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $slice ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $sortArray ✅ Ja ✅ Ja ✅ Ja
Array-Ausdrucksoperatoren $zip ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Operatoren $bitAnd ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Operatoren $bitNot ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Operatoren $bitOr ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bitweise Operatoren $bitXor ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Boolesche Ausdrucksoperatoren $and ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Boolesche Ausdrucksoperatoren $not ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Boolesche Ausdrucksoperatoren $or ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsausdrucksoperatoren $cmp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsausdrucksoperatoren $eq ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsausdrucksoperatoren $gt ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsausdrucksoperatoren $gte ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsausdrucksoperatoren $lt ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsausdrucksoperatoren $lte ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Vergleichsausdrucksoperatoren $ne ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Benutzerdefinierte Aggregationsausdrucksoperatoren $accumulator Abgekündigt in Mongo Version 8.0
Benutzerdefinierte Aggregationsausdrucksoperatoren $function Abgekündigt in Mongo Version 8.0
Operatoren für die Datengröße $bsonSize ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für die Datengröße $binarySize ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateAdd ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateDiff ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateFromParts ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateFromString ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateSubtract ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateToParts ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateToString ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dateTrunc ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dayOfMonth ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dayOfWeek ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $dayOfYear ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $hour ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $isoDayOfWeek ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $isoWeek ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $isoWeekYear ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $millisecond ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $minute ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $month ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $second ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $toDate ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $week ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operatoren für Date-Ausdrücke $year ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Literalausdrucksoperator $literal ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Verschiedene Operatoren $getField ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Verschiedene Operatoren $rand ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Verschiedene Operatoren $sampleRate ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Objektausdrucksoperatoren $mergeObjects ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Objektausdrucksoperatoren $objectToArray ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Objektausdrucksoperatoren $setField ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Ausdrucksmengenoperatoren $allElementsTrue ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Ausdrucksmengenoperatoren $anyElementTrue ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Ausdrucksmengenoperatoren $setDifference ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Ausdrucksmengenoperatoren $setEquals ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Ausdrucksmengenoperatoren $setIntersection ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Ausdrucksmengenoperatoren $setIsSubset ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Ausdrucksmengenoperatoren $setUnion ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $concat ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $dateFromString ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $dateToString ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $indexOfBytes ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $indexOfCP ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $ltrim ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $regexFind ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $regexFindAll ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $regexMatch ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $replaceOne ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $replaceAll ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $rtrim ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $split ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $strLenBytes ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $strLenCP ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $strcasecmp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $substr ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $substrBytes ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $substrCP ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $toLower ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $toString ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $trim ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeichenfolgenausdrucksoperatoren $toUpper ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Operator für Textausdruck $meta ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Zeitstempelausdrucksoperatoren $tsIncrement ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Zeitstempelausdrucksoperatoren $tsSecond ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $sin ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $cos ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $tan ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $asin ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $acos ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $atan ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $atan2 ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $asinh ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $acosh ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $atanh ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $sinh ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $cosh ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $tanh ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $degreesToRadians ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Trigonometrieausdrucksoperatoren $radiansToDegrees ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $convert ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $isNumber ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toBool ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toDate ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toDecimal ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toDouble ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toInt ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toLong ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toObjectId ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $toString ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Typ Ausdrucksoperatoren $type ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $accumulator Abgekündigt in Mongo Version 8.0
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $addToSet ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $avg ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $bottom ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $bottomN ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $count ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $first ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $firstN ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $last ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $lastN ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $max ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $maxN ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $median ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $mergeObjects ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $min ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $percentile ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $push ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $stdDevPop ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $stdDevSamp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $sum ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $top ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren ($group, $bucket, $bucketAuto, $setWindowFields) $topN ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $avg ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $first ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $last ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $max ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $median ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $min ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $percentile ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $stdDevPop ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $stdDevSamp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Akkumulatoren (in anderen Stufen) $sum ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablenausdrucksoperatoren $let ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $sum ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $push ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $addToSet ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $count ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $max ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $min ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $avg ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $stdDevPop ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $bottom ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $bottomN ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $covariancePop ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $covarianceSamp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $denseRank ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $derivative ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $documentNumber ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $expMovingAvg ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $first ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $integral ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $last ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $linearFill ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $locf ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $minN ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $rank ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $shift ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $stdDevSamp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $top ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Fensteroperatoren $topN ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bedingte Ausdrucksoperatoren $cond ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bedingte Ausdrucksoperatoren $ifNull ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Bedingte Ausdrucksoperatoren $switch ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $addFields ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $bucket ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $bucketAuto ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $changeStream ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $changeStreamSplitLargeEvent ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Stufen der Aggregationspipeline $collStats ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $count ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $densify ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $documents ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $facet ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $fill ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $geoNear ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $graphLookup ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $group ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $indexStats ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $limit ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $listSampledQueries ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Stufen der Aggregationspipeline $listSearchIndexes ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Stufen der Aggregationspipeline $listSessions ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Stufen der Aggregationspipeline $lookup ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $match ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $merge ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $out ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $planCacheStats ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Stufen der Aggregationspipeline $project ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $redact ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $replaceRoot ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $replaceWith ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $sample ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $search ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $searchMeta ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $set ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $setWindowFields ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $skip ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $sort ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $sortByCount ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $unionWith ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $unset ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $unwind ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $shardedDataDistribution ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Stufen der Aggregationspipeline $currentOp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Stufen der Aggregationspipeline $listLocalSessions ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Variablen in Aggregationsausdrücken NOW ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablen in Aggregationsausdrücken ROOT ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablen in Aggregationsausdrücken REMOVE ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablen in Aggregationsausdrücken CURRENT ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablen in Aggregationsausdrücken CLUSTER_TIME ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Variablen in Aggregationsausdrücken DESCEND ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablen in Aggregationsausdrücken PRUNE ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablen in Aggregationsausdrücken KEEP ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Variablen in Aggregationsausdrücken SEARCH_META ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Variablen in Aggregationsausdrücken USER_ROLES ❌ Nein ❌ Nein ❌ Nein ❌ Nein

Hinweis

AvgObjsize und size in collStats & dbStats funktioniert nur mit Dokumenten, die kleiner als 2 KB sind.

Die Schemaüberprüfung unterstützt: insert, update, findAndModify und die Phasen $merge / $out in der Aggregation. Verwenden Sie bypassDocumentValidation, um die Validierung bei Bedarf zu überspringen.

In diesem Artikel werden nur die unterstützten serverseitigen Befehle aufgeführt und keine clientseitigen Wrapperfunktionen enthalten. Clientseitige Wrapperfunktionen, wie z. B. deleteMany() und updateMany(), rufen intern die entsprechenden Serverbefehle (delete() und update()) auf. Jede Funktion, die auf unterstützten Serverbefehlen basiert, ist mit Azure DocumentDB kompatibel.

Datenbankbefehle

Azure DocumentDB unterstützt die folgenden Datenbankbefehle:

Kategorie Command Funktion (v5.0) Funktion (v6.0) Funktion (v7.0) Funktion (v8.0)
Administrative Befehle cloneCollectionAsCapped ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle collMod ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle compact ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle convertToCapped ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle create ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle createIndexes ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle currentOp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle drop ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle dropDatabase ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle dropIndexes ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle filemd5 ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle getDefaultRWConcern ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle getClusterParameter N/A¹ ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle getParameter ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle killCursors ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle killOp ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle listCollections ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle listDatabases ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle listIndexes ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle reIndex ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle renameCollection ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle setIndexCommitQuorum ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle setParameter ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Administrative Befehle setDefaultRWConcern ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle validateDBMetadata ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Administrative Befehle dropConnections N/A² N/A² N/A² N/A²
Administrative Befehle fsync N/A² N/A² N/A² N/A²
Administrative Befehle fsyncUnlock N/A² N/A² N/A² N/A²
Administrative Befehle logRotate N/A² N/A² N/A² N/A²
Administrative Befehle rotateCertificates N/A² N/A² N/A² N/A²
Administrative Befehle setFeatureCompatibilityVersion N/A² N/A² N/A² N/A²
Administrative Befehle shutdown N/A² N/A² N/A² N/A²
Administrative Befehle compactStructuredEncryptionData N/A² N/A² N/A² N/A²
Administrative Befehle setUserWriteBlockMode N/A² N/A² N/A² N/A²
Aggregationsbefehle aggregate ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Aggregationsbefehle count ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Aggregationsbefehle distinct ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Aggregationsbefehle mapReduce N/A¹ N/A¹ N/A¹ N/A¹
Authentifizierungsbefehle authenticate ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Authentifizierungsbefehle logout N/A¹ N/A¹ N/A¹ N/A¹
Diagnosebefehle buildInfo ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle collStats ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle connPoolStats ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Diagnosebefehle connectionStatus ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle dataSize ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Diagnosebefehle dbHash ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Diagnosebefehle dbStats ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle explain ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle getCmdLineOpts ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle getLog ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle hello ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle hostInfo ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle listCommands ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle lockInfo ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Diagnosebefehle ping ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle profile N/A² N/A² N/A² N/A²
Diagnosebefehle serverStatus ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Diagnosebefehle shardConnPoolStats N/A¹ N/A¹ N/A¹ N/A¹
Diagnosebefehle top ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Diagnosebefehle validate ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Diagnosebefehle whatsmyuri ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Geospatialbefehle geoSearch N/A¹ N/A¹ N/A¹ N/A¹
Befehle für Abfrage- und Schreibvorgänge bulkWrite ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Befehle für Abfrage- und Schreibvorgänge delete ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für Abfrage- und Schreibvorgänge find ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für Abfrage- und Schreibvorgänge findAndModify ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für Abfrage- und Schreibvorgänge getLastError N/A N/A N/A N/A
Befehle für Abfrage- und Schreibvorgänge getMore ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für Abfrage- und Schreibvorgänge insert ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für Abfrage- und Schreibvorgänge resetError N/A¹ N/A¹ N/A¹ N/A¹
Befehle für Abfrage- und Schreibvorgänge update ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Abfrageplan-Cachebefehle N/A
Replikationsbefehle N/A
Rollenverwaltungsbefehle N/A
Sitzungsbefehle abortTransaction ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Sitzungsbefehle commitTransaction ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Sitzungsbefehle endSessions ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Sitzungsbefehle killAllSessions ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Sitzungsbefehle killAllSessionsByPattern ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Sitzungsbefehle killSessions ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Sitzungsbefehle refreshSessions ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Sitzungsbefehle startSession ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für horizontales Partitionieren enableSharding ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für horizontales Partitionieren isdbgrid ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für horizontales Partitionieren reshardCollection ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für horizontales Partitionieren shardCollection ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für horizontales Partitionieren unsetSharding N/A¹ N/A¹ N/A¹ N/A¹
Befehle für horizontales Partitionieren addShardToZone N/A N/A N/A N/A
Befehle für horizontales Partitionieren clearJumboFlag N/A N/A N/A N/A
Befehle für horizontales Partitionieren abortUnshardCollection N/A N/A N/A N/A
Befehle für horizontales Partitionieren removeShard N/A N/A N/A N/A
Befehle für horizontales Partitionieren removeShardFromZone N/A N/A N/A N/A
Befehle für horizontales Partitionieren setShardVersion N/A N/A N/A N/A
Befehle für horizontales Partitionieren mergeChunks N/A N/A N/A N/A
Befehle für horizontales Partitionieren abortMoveCollection N/A N/A N/A N/A
Befehle für horizontales Partitionieren getShardMap N/A N/A N/A N/A
Befehle für horizontales Partitionieren analyzeShardKey N/A N/A N/A N/A
Befehle für horizontales Partitionieren medianKey N/A N/A N/A N/A
Befehle für horizontales Partitionieren checkMetadataConsistency N/A N/A N/A N/A
Befehle für horizontales Partitionieren shardingState N/A N/A N/A N/A
Befehle für horizontales Partitionieren cleanupReshardCollection N/A N/A N/A N/A
Befehle für horizontales Partitionieren flushRouterConfig N/A N/A N/A N/A
Befehle für horizontales Partitionieren balancerCollectionStatus N/A N/A N/A N/A
Befehle für horizontales Partitionieren balancerStart N/A N/A N/A N/A
Befehle für horizontales Partitionieren balancerStatus N/A N/A N/A N/A
Befehle für horizontales Partitionieren balancerStop N/A N/A N/A N/A
Befehle für horizontales Partitionieren configureCollectionBalancing N/A N/A N/A N/A
Befehle für horizontales Partitionieren listShards N/A N/A N/A N/A
Befehle für horizontales Partitionieren split N/A N/A N/A N/A
Befehle für horizontales Partitionieren moveChunk N/A N/A N/A N/A
Befehle für horizontales Partitionieren updateZoneKeyRange N/A N/A N/A N/A
Befehle für horizontales Partitionieren movePrimary N/A N/A N/A N/A
Befehle für horizontales Partitionieren moveRange N/A N/A N/A N/A
Befehle für horizontales Partitionieren abortReshardCollection N/A N/A N/A N/A
Befehle für horizontales Partitionieren commitReshardCollection N/A N/A N/A N/A
Befehle für horizontales Partitionieren refineCollectionShardKey N/A N/A N/A N/A
Befehle für horizontales Partitionieren configureQueryAnalyzer N/A N/A N/A N/A
Befehle für horizontales Partitionieren transitionFromDedicatedConfigServer N/A N/A N/A N/A
Befehle für horizontales Partitionieren transitionToDedicatedConfigServer N/A N/A N/A N/A
Befehle für horizontales Partitionieren unshardCollection N/A N/A N/A N/A
Befehle zur Überwachung von Systemereignissen logApplicationMessage ❌ Nein ❌ Nein ❌ Nein ❌ Nein
Befehle für die Benutzerverwaltung createUser ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für die Benutzerverwaltung dropUser ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für die Benutzerverwaltung usersInfo ✅ Ja ✅ Ja ✅ Ja ✅ Ja
Befehle für die Benutzerverwaltung dropAllUsersFromDatabase N/A N/A N/A N/A
Befehle für die Benutzerverwaltung grantRolesToUser N/A N/A N/A N/A
Befehle für die Benutzerverwaltung revokeRolesFromUser N/A N/A N/A N/A
Befehle für die Benutzerverwaltung updateUser N/A N/A N/A N/A

Hinweis

  1. getClusterParameter wird in v5.0 nicht unterstützt.
  2. Azure verwaltet Azure DocumentDB vollständig, einen PaaS-Service, für Befehle wie dropConnections, fsync, logRotate usw.
  3. Veraltet in Version 5.0 von MongoDB.
  4. Seit Version 5.1 in MongoDB veraltet.
  5. Als PaaS-Dienst verwaltet das Datenbankmodul die Zwischenspeicherung von Abfrageplänen für Sie.
  6. Azure verwaltet die Replikation und entfernt die Notwendigkeit, manuell zu replizieren.
  7. Als vollständig verwalteter Dienst wird diese Funktion über die Microsoft Entra-ID bereitgestellt.
  8. Als PaaS-Angebot behandelt Azure Shard Management und Rebalancing. Sie müssen nur einen Shard für Ihre Sammlungen einrichten. Azure kümmert sich um den Rest.

Indextypen

Azure DocumentDB unterstützt die folgenden Indextypen:

Index Description Unterstützt
Einzelfeldindex Indiziert ein einzelnes Feld für schnellere Nachschlagevorgänge. ✅ Ja
Verbundindex Indiziert mehrere Felder in einem Index. ✅ Ja
Index mit mehreren Schlüsseln Indiziert Arrayfelder, indem jedes Element indiziert wird. ✅ Ja
Textindex Unterstützt die Textsuche in Zeichenfolgenfeldern. ✅ Ja
Platzhalterindex Indiziert dynamisch entweder alle oder ausgewählte Felder. ✅ Ja
Räumlicher Index Unterstützt räumliche Abfragen für GeoJSON-Daten. ✅ Ja
Hashindex Indiziert gehashte Feldwerte, oft für Sharding. ✅ Ja
Vektorindex (nur in DocumentDB) Ermöglicht die Ähnlichkeitssuche für Vektordaten. ✅ Ja, mit Vektorsuche

Hinweis

Beim Erstellen eines eindeutigen Index wird für die gesamte Dauer des Buildprozesses eine exklusive Sperre für die Sammlung aktiviert. Diese Indizes blockieren Lese- und Schreibvorgänge für die Sammlung, bis der Vorgang abgeschlossen ist.

Indexeigenschaften

Azure DocumentDB unterstützt die folgenden Indexeigenschaften:

Index-Eigenschaft Description Unterstützt
Lebensdauer (Time-to-Live, TTL) Löscht Dokumente automatisch nach einer festgelegten Ablaufzeit. ✅ Ja
Einzigartig Stellt sicher, dass alle Werte im indizierten Feld eindeutig sind. ✅ Ja
Partial Indiziert nur Dokumente, die einer angegebenen Filterbedingung entsprechen. ✅ Ja
Keine Beachtung von Groß-/Kleinschreibung Unterstützt die Indizierung unabhängig von der Groß-/Kleinschreibung für Textfelder. ✅ Ja
Platzsparend Indiziert nur Dokumente, die das indizierte Feld enthalten. ✅ Ja
Hintergrund Ermöglicht das Erstellen des Indexes im Hintergrund, ohne Vorgänge zu blockieren. ✅ Ja