Partager via


Compatibilité du langage de requête MongoDB (MQL) dans Azure DocumentDB

Azure DocumentDB fournit une compatibilité complète du langage de requête MongoDB (MQL), en combinant les fonctionnalités familières de MongoDB avec les fonctionnalités d’entreprise d’Azure. Cet article fournit une vue d’ensemble de la compatibilité MQL et de la prise en charge des fonctionnalités dans les versions 5.0-8.0, notamment les opérateurs, les commandes, les index et le protocole filaire MongoDB. Les applications peuvent s’exécuter sans modification de code, à l’aide des mêmes pilotes clients, sdk et outils. Les utilisateurs bénéficient de l’évolutivité, de la sécurité et de l’intégration d’Azure à d’autres services Azure.

Prise en charge du protocole réseau

Le service Azure DocumentDB utilise le protocole filaire MongoDB, qui offre une compatibilité transparente avec les outils et pilotes existants. Tout pilote client qui prend en charge le protocole filaire MongoDB peut se connecter à Azure DocumentDB, afin que les applications puissent s’exécuter sans modification du code.

Les développeurs peuvent conserver les mêmes pilotes clients, kits de développement logiciel (SDK) et outils. En tant qu’utilisateur, vous bénéficiez également de l’évolutivité, de la sécurité et de l’intégration approfondie d’Azure à d’autres services au sein de la plateforme Azure.

Prise en charge du langage de requêtes

Outre la prise en charge du protocole, Azure DocumentDB fournit également une prise en charge complète des constructions du langage de requête MongoDB.

Philosophie de compatibilité

La compatibilité globale des produits est déterminée en évaluant le nombre d’opérateurs MongoDB (étapes d’agrégation, opérateurs d’agrégation, opérateurs de requête et opérateurs de projection et opérateurs de mise à jour) pris en charge par le service. Les commandes mongoDB et les opérations d’administration sont exclues de ce calcul, car Azure DocumentDB, en tant qu’offre PaaS, prend en charge la plupart de ces commandes internes, ce qui élimine la nécessité d’une intervention de l’utilisateur. Ces commandes ne sont pas exposées aux utilisateurs ; Toutefois, en fonction des modèles d’utilisation et des commentaires des clients, un sous-ensemble de commandes couramment utilisées est disponible pour simplifier l’expérience utilisateur.

La compatibilité globale des produits se situe aujourd’hui à 99,02%. Le tableau récapitulative de compatibilité ci-dessous décrit la prise en charge de chaque type d’opérateur :

Total Soutenu Pourcentage
Étapes d’agrégation 60 58 96,67%
Opérateurs d’agrégation 181 181 100 %
Opérateurs de requête et de projection 45 44 97,78%
Opérateurs de mise à jour 22 22 100 %

La section suivante présente une répartition complète des opérateurs de base de données, des commandes et d’autres fonctionnalités pris en charge, offrant une vue claire de la compatibilité et des fonctionnalités du produit dans différents scénarios.

Opérateurs

Le tableau ci-dessous répertorie les opérateurs actuellement pris en charge dans Azure DocumentDB :

Catégorie Operator Pris en charge (v5.0) Pris en charge (v6.0) Pris en charge (v7.0) Pris en charge (v8.0)
Opérateurs de requête de comparaison $eq ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de comparaison $gt ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de comparaison $gte ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de comparaison $in ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de comparaison $lt ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de comparaison $lte ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de comparaison $ne ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de comparaison $nin ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête logique $and ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête logique $not ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête logique $nor ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête logique $or ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’élément $exists ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’élément $type ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’évaluation $expr ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’évaluation $jsonSchema* ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’évaluation $mod ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’évaluation $regex ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’évaluation $text ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête d’évaluation $where Déconseillé dans Mongo version 8.0
Opérateurs géospatiaux $geoIntersects ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $geoWithin ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $box ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $center ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $centerSphere ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $geometry ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $maxDistance ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $minDistance ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $polygon ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $near ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs géospatiaux $nearSphere ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de tableau $all ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de tableau $elemMatch ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête de tableau $size ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête au niveau du bit $bitsAllClear ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête au niveau du bit $bitsAllSet ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête au niveau du bit $bitsAnyClear ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête au niveau du bit $bitsAnySet ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de projection $ ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de projection $elemMatch ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de projection $meta ❌ Non ❌ Non ❌ Non ❌ Non
Opérateurs de projection $slice ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête divers $comment ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête divers $rand ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de requête divers $natural ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $currentDate ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $inc ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $min ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $max ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $mul ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $rename ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $set ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $setOnInsert ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de champ $unset ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $ ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $[] ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $[identifier] ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $addToSet ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $pop ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $pull ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $push ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $pullAll ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $each ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $position ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $slice ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour de tableau $sort ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de mise à jour au niveau du bit $bit ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $abs ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $add ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $ceil ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $divide ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $exp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $floor ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $ln ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $log ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $log10 ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $mod ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $multiply ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $pow ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $round ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $sqrt ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $subtract ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression arithmétique $trunc ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $arrayElemAt ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $arrayToObject ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $concatArrays ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $filter ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $firstN ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $in ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $indexOfArray ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $isArray ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $lastN ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $map ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $maxN ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $minN ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $objectToArray ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $range ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $reduce ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $reverseArray ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $size ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $slice ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $sortArray ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de tableau $zip ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs au niveau du bit $bitAnd ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs au niveau du bit $bitNot ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs au niveau du bit $bitOr ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs au niveau du bit $bitXor ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression booléenne $and ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression booléenne $not ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression booléenne $or ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de comparaison $cmp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de comparaison $eq ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de comparaison $gt ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de comparaison $gte ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de comparaison $lt ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de comparaison $lte ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de comparaison $ne ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’agrégation personnalisée $accumulator Déconseillé dans Mongo version 8.0
Opérateurs d’expression d’agrégation personnalisée $function Déconseillé dans Mongo version 8.0
Opérateurs de taille de données $bsonSize ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de taille de données $binarySize ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateAdd ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateDiff ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateFromParts ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateFromString ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateSubtract ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateToParts ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateToString ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dateTrunc ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dayOfMonth ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dayOfWeek ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $dayOfYear ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $hour ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $isoDayOfWeek ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $isoWeek ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $isoWeekYear ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $millisecond ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $minute ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $month ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $second ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $toDate ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $week ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de date $year ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateur d’expression littérale $literal ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs divers $getField ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs divers $rand ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs divers $sampleRate ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’objet $mergeObjects ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’objet $objectToArray ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’objet $setField ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’ensemble $allElementsTrue ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’ensemble $anyElementTrue ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’ensemble $setDifference ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’ensemble $setEquals ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’ensemble $setIntersection ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’ensemble $setIsSubset ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’ensemble $setUnion ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $concat ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $dateFromString ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $dateToString ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $indexOfBytes ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $indexOfCP ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $ltrim ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $regexFind ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $regexFindAll ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $regexMatch ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $replaceOne ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $replaceAll ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $rtrim ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $split ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $strLenBytes ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $strLenCP ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $strcasecmp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $substr ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $substrBytes ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $substrCP ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $toLower ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $toString ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $trim ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de chaîne $toUpper ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateur d’expression de texte $meta ❌ Non ❌ Non ❌ Non ❌ Non
Opérateurs d’expression d’horodatage $tsIncrement ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression d’horodatage $tsSecond ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $sin ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $cos ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $tan ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $asin ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $acos ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $atan ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $atan2 ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $asinh ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $acosh ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $atanh ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $sinh ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $cosh ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $tanh ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $degreesToRadians ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression trigonométrique $radiansToDegrees ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $convert ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $isNumber ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toBool ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toDate ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toDecimal ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toDouble ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toInt ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toLong ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toObjectId ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $toString ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de type $type ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $accumulator Déconseillé dans Mongo version 8.0
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $addToSet ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $avg ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $bottom ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $bottomN ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $count ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $first ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $firstN ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $last ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $lastN ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $max ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $maxN ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $median ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $mergeObjects ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $min ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $percentile ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $push ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $stdDevPop ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $stdDevSamp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $sum ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $top ✅ Oui ✅ Oui ✅ Oui
Accumulateurs ($group, , $bucket$bucketAuto, $setWindowFields) $topN ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $avg ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $first ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $last ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $max ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $median ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $min ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $percentile ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $stdDevPop ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $stdDevSamp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Accumulateurs (dans d’autres phases) $sum ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression de variable $let ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $sum ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $push ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $addToSet ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $count ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $max ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $min ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $avg ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $stdDevPop ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $bottom ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $bottomN ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $covariancePop ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $covarianceSamp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $denseRank ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $derivative ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $documentNumber ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $expMovingAvg ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $first ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $integral ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $last ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $linearFill ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $locf ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $minN ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $rank ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $shift ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $stdDevSamp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $top ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs de fenêtre $topN ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression conditionnelle $cond ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression conditionnelle $ifNull ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Opérateurs d’expression conditionnelle $switch ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $addFields ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $bucket ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $bucketAuto ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $changeStream ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $changeStreamSplitLargeEvent ❌ Non ❌ Non ❌ Non ❌ Non
Phases des pipelines d’agrégation $collStats ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $count ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $densify ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $documents ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $facet ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $fill ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $geoNear ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $graphLookup ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $group ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $indexStats ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $limit ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $listSampledQueries ❌ Non ❌ Non ❌ Non ❌ Non
Phases des pipelines d’agrégation $listSearchIndexes ❌ Non ❌ Non ❌ Non ❌ Non
Phases des pipelines d’agrégation $listSessions ❌ Non ❌ Non ❌ Non ❌ Non
Phases des pipelines d’agrégation $lookup ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $match ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $merge ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $out ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $planCacheStats ❌ Non ❌ Non ❌ Non ❌ Non
Phases des pipelines d’agrégation $project ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $redact ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $replaceRoot ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $replaceWith ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $sample ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $search ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $searchMeta ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $set ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $setWindowFields ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $skip ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $sort ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $sortByCount ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $unionWith ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $unset ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $unwind ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $shardedDataDistribution ❌ Non ❌ Non ❌ Non ❌ Non
Phases des pipelines d’agrégation $currentOp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Phases des pipelines d’agrégation $listLocalSessions ❌ Non ❌ Non ❌ Non ❌ Non
Variables dans les expressions d’agrégation NOW ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Variables dans les expressions d’agrégation ROOT ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Variables dans les expressions d’agrégation REMOVE ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Variables dans les expressions d’agrégation CURRENT ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Variables dans les expressions d’agrégation CLUSTER_TIME ❌ Non ❌ Non ❌ Non ❌ Non
Variables dans les expressions d’agrégation DESCEND ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Variables dans les expressions d’agrégation PRUNE ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Variables dans les expressions d’agrégation KEEP ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Variables dans les expressions d’agrégation SEARCH_META ❌ Non ❌ Non ❌ Non ❌ Non
Variables dans les expressions d’agrégation USER_ROLES ❌ Non ❌ Non ❌ Non ❌ Non

Note

AvgObjsize et size in collStats & dbStats ne fonctionne qu’avec des documents dont la taille est inférieure à 2 kilo-octets.

La validation de schéma prend en charge : insert, update, findAndModify, et les étapes $merge / $out dans l'agrégation. Permet bypassDocumentValidation d’ignorer la validation si nécessaire.

Cet article répertorie uniquement les commandes côté serveur prises en charge et n’inclut pas les fonctions wrapper côté client. Fonctions wrapper côté client, telles que deleteMany() et updateMany(), appellent en interne les commandes de serveur correspondantes (delete() et update()). Toute fonction qui s’appuie sur les commandes de serveur prises en charge est compatible avec Azure DocumentDB.

Commandes de base de données

Azure DocumentDB prend en charge les commandes de base de données suivantes :

Catégorie Command Fonctionnalité (v5.0) Fonctionnalité (v6.0) Caractéristique (v7.0) Fonctionnalité (v8.0)
Commandes administratives cloneCollectionAsCapped ❌ Non ❌ Non ❌ Non ❌ Non
Commandes administratives collMod ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives compact ❌ Non ❌ Non ❌ Non ❌ Non
Commandes administratives convertToCapped ❌ Non ❌ Non ❌ Non ❌ Non
Commandes administratives create ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives createIndexes ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives currentOp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives drop ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives dropDatabase ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives dropIndexes ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives filemd5 ❌ Non ❌ Non ❌ Non ❌ Non
Commandes administratives getDefaultRWConcern ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives getClusterParameter N/A¹ ❌ Non ❌ Non ❌ Non
Commandes administratives getParameter ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives killCursors ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives killOp ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives listCollections ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives listDatabases ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives listIndexes ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives reIndex ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives renameCollection ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives setIndexCommitQuorum ❌ Non ❌ Non ❌ Non ❌ Non
Commandes administratives setParameter ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes administratives setDefaultRWConcern ❌ Non ❌ Non ❌ Non ❌ Non
Commandes administratives validateDBMetadata ❌ Non ❌ Non ❌ Non ❌ Non
Commandes administratives dropConnections N/A² N/A² N/A² N/A²
Commandes administratives fsync N/A² N/A² N/A² N/A²
Commandes administratives fsyncUnlock N/A² N/A² N/A² N/A²
Commandes administratives logRotate N/A² N/A² N/A² N/A²
Commandes administratives rotateCertificates N/A² N/A² N/A² N/A²
Commandes administratives setFeatureCompatibilityVersion N/A² N/A² N/A² N/A²
Commandes administratives shutdown N/A² N/A² N/A² N/A²
Commandes administratives compactStructuredEncryptionData N/A² N/A² N/A² N/A²
Commandes administratives setUserWriteBlockMode N/A² N/A² N/A² N/A²
Commandes d’agrégation aggregate ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’agrégation count ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’agrégation distinct ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’agrégation mapReduce N/A³ N/A³ N/A³ N/A³
Commandes d’authentification authenticate ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’authentification logout N/A³ N/A³ N/A³ N/A³
Commandes de diagnostic buildInfo ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic collStats ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic connPoolStats ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de diagnostic connectionStatus ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic dataSize ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de diagnostic dbHash ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de diagnostic dbStats ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic explain ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic getCmdLineOpts ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic getLog ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic hello ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic hostInfo ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic listCommands ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic lockInfo ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de diagnostic ping ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic profile N/A² N/A² N/A² N/A²
Commandes de diagnostic serverStatus ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de diagnostic shardConnPoolStats N/A³ N/A³ N/A³ N/A³
Commandes de diagnostic top ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de diagnostic validate ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de diagnostic whatsmyuri ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes géospatiales geoSearch N/A³ N/A³ N/A³ N/A³
Commandes d’opérations de requête et d’écriture bulkWrite ❌ Non ❌ Non ❌ Non ❌ Non
Commandes d’opérations de requête et d’écriture delete ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’opérations de requête et d’écriture find ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’opérations de requête et d’écriture findAndModify ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’opérations de requête et d’écriture getLastError N/A N/A N/A N/A
Commandes d’opérations de requête et d’écriture getMore ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’opérations de requête et d’écriture insert ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes d’opérations de requête et d’écriture resetError N/A³ N/A³ N/A³ N/A³
Commandes d’opérations de requête et d’écriture update ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes du cache du plan de requête N/A
Commandes de réplication N/A
Commandes de gestion des rôles N/A
Commandes de session abortTransaction ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de session commitTransaction ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de session endSessions ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de session killAllSessions ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de session killAllSessionsByPattern ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de session killSessions ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de session refreshSessions ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de session startSession ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de partitionnement enableSharding ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de partitionnement isdbgrid ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de partitionnement reshardCollection ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de partitionnement shardCollection ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de partitionnement unsetSharding N/A³ N/A³ N/A³ N/A³
Commandes de partitionnement addShardToZone N/A N/A N/A N/A
Commandes de partitionnement clearJumboFlag N/A N/A N/A N/A
Commandes de partitionnement abortUnshardCollection N/A N/A N/A N/A
Commandes de partitionnement removeShard N/A N/A N/A N/A
Commandes de partitionnement removeShardFromZone N/A N/A N/A N/A
Commandes de partitionnement setShardVersion N/A N/A N/A N/A
Commandes de partitionnement mergeChunks N/A N/A N/A N/A
Commandes de partitionnement abortMoveCollection N/A N/A N/A N/A
Commandes de partitionnement getShardMap N/A N/A N/A N/A
Commandes de partitionnement analyzeShardKey N/A N/A N/A N/A
Commandes de partitionnement medianKey N/A N/A N/A N/A
Commandes de partitionnement checkMetadataConsistency N/A N/A N/A N/A
Commandes de partitionnement shardingState N/A N/A N/A N/A
Commandes de partitionnement cleanupReshardCollection N/A N/A N/A N/A
Commandes de partitionnement flushRouterConfig N/A N/A N/A N/A
Commandes de partitionnement balancerCollectionStatus N/A N/A N/A N/A
Commandes de partitionnement balancerStart N/A N/A N/A N/A
Commandes de partitionnement balancerStatus N/A N/A N/A N/A
Commandes de partitionnement balancerStop N/A N/A N/A N/A
Commandes de partitionnement configureCollectionBalancing N/A N/A N/A N/A
Commandes de partitionnement listShards N/A N/A N/A N/A
Commandes de partitionnement split N/A N/A N/A N/A
Commandes de partitionnement moveChunk N/A N/A N/A N/A
Commandes de partitionnement updateZoneKeyRange N/A N/A N/A N/A
Commandes de partitionnement movePrimary N/A N/A N/A N/A
Commandes de partitionnement moveRange N/A N/A N/A N/A
Commandes de partitionnement abortReshardCollection N/A N/A N/A N/A
Commandes de partitionnement commitReshardCollection N/A N/A N/A N/A
Commandes de partitionnement refineCollectionShardKey N/A N/A N/A N/A
Commandes de partitionnement configureQueryAnalyzer N/A N/A N/A N/A
Commandes de partitionnement transitionFromDedicatedConfigServer N/A N/A N/A N/A
Commandes de partitionnement transitionToDedicatedConfigServer N/A N/A N/A N/A
Commandes de partitionnement unshardCollection N/A N/A N/A N/A
Commandes d’audit des événements système logApplicationMessage ❌ Non ❌ Non ❌ Non ❌ Non
Commandes de gestion des utilisateurs createUser ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de gestion des utilisateurs dropUser ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de gestion des utilisateurs usersInfo ✅ Oui ✅ Oui ✅ Oui ✅ Oui
Commandes de gestion des utilisateurs dropAllUsersFromDatabase N/A N/A N/A N/A
Commandes de gestion des utilisateurs grantRolesToUser N/A N/A N/A N/A
Commandes de gestion des utilisateurs revokeRolesFromUser N/A N/A N/A N/A
Commandes de gestion des utilisateurs updateUser N/A N/A N/A N/A

Note

  1. getClusterParameter n’est pas pris en charge dans la version 5.0.
  2. Azure gère entièrement Azure DocumentDB, un service PaaS, pour les commandes telles que dropConnections, fsync, logRotate, etc.
  3. Déconseillé dans MongoDB version 5.0.
  4. Déconseillé dans MongoDB version 5.1.
  5. Étant un service PaaS, le moteur de base de données gère la mise en cache du plan de requête pour vous.
  6. Azure gère la réplication, supprimant la nécessité de répliquer manuellement.
  7. En tant que service entièrement managé, cette fonctionnalité est fournie via l’ID Microsoft Entra.
  8. En tant qu’offre PaaS, Azure gère la gestion des partitions et le rééquilibrage. Vous devez uniquement effectuer une partition de vos collections. Azure s’occupe du reste.

Types d’index

Azure DocumentDB prend en charge les types d’index suivants :

Index Descriptif Soutenu
Index à champ unique Indexe un seul champ pour des recherches plus rapides. ✅ Oui
Index composé Indexe plusieurs champs dans un index. ✅ Oui
Index à plusieurs clés Indexe les champs de tableau en indexant chaque élément. ✅ Oui
Index de texte Prend en charge la recherche de texte sur les champs de chaîne. ✅ Oui
Index à caractère générique Indexe dynamiquement tous les champs ou champs sélectionnés. ✅ Oui
Index géospatial Prend en charge les requêtes spatiales sur les données GeoJSON. ✅ Oui
Index de hachage Indexe les valeurs de champ hachées, souvent pour le partitionnement. ✅ Oui
Index vectoriel (uniquement dans DocumentDB) Active la recherche de similarité sur les données vectorielles. ✅ Oui, avec recherche vectorielle

Note

La création d’un index unique reçoit un verrou exclusif au niveau de la collection pendant toute la durée du processus de génération. Ces index bloquent les opérations de lecture et d’écriture sur la collection jusqu’à ce que l’opération soit terminée.

Propriétés d’index

Azure DocumentDB prend en charge les propriétés d’index suivantes :

Index, propriété Descriptif Soutenu
durée de vie (time-to-live, TTL) Supprime automatiquement les documents après une période de durée de vie spécifiée. ✅ Oui
Unique Garantit que toutes les valeurs du champ indexé sont uniques. ✅ Oui
Partiel Indexe uniquement les documents qui correspondent à une condition de filtre spécifiée. ✅ Oui
Insensible à la casse Prend en charge l’indexation ne respectant pas la casse pour les champs de chaînes. ✅ Oui
Partiellement alloué Indexe uniquement les documents qui contiennent le champ indexé. ✅ Oui
Contexte Permet de créer l’index en arrière-plan sans bloquer les opérations. ✅ Oui