Compartilhar via


Compatibilidade da Linguagem de Consulta do MongoDB (MQL) no Azure DocumentDB

O Azure DocumentDB fornece compatibilidade abrangente da Linguagem de Consulta do MongoDB (MQL), combinando os recursos familiares do MongoDB com os recursos corporativos do Azure. Este artigo fornece uma visão geral da compatibilidade do MQL e do suporte a recursos nas versões 5.0-8.0, incluindo operadores, comandos, índices e o protocolo de transmissão do MongoDB. Os aplicativos podem ser executados sem alterações de código, usando os mesmos drivers de cliente, SDKs e ferramentas. Os usuários se beneficiam da escalabilidade, segurança e integração do Azure com outros serviços do Azure.

Suporte ao protocolo de rede

O serviço Azure DocumentDB usa o protocolo de transmissão do MongoDB, que fornece compatibilidade perfeita com drivers e ferramentas existentes. Qualquer driver cliente compatível com o protocolo de transmissão do MongoDB pode se conectar ao Azure DocumentDB, para que os aplicativos possam ser executados sem alterações de código.

Os desenvolvedores podem manter os mesmos drivers de cliente, SDKs (kits de desenvolvimento de software) e ferramentas. Como usuário, você também obtém a escalabilidade, a segurança e a integração profunda do Azure com outros serviços na plataforma do Azure.

Suporte de linguagem de consulta

Além do suporte ao protocolo, o Azure DocumentDB também fornece suporte abrangente para constructos de linguagem de consulta do MongoDB.

Filosofia de compatibilidade

A compatibilidade geral do produto é determinada avaliando o número de operadores do MongoDB (Estágios de Agregação, Operadores de Agregação, Operadores de Consulta e Projeção e Operadores de Atualização) compatíveis com o serviço. Comandos do MongoDB e operações de administrador são excluídos desse cálculo porque o Azure DocumentDB, como uma oferta de PaaS, dá suporte à maioria desses comandos internamente, eliminando a necessidade de intervenção do usuário. Esses comandos não são expostos aos usuários; no entanto, com base em padrões de uso e comentários do cliente, um subconjunto de comandos comumente usados está disponível para simplificar a experiência do usuário.

A compatibilidade geral do produto hoje é de 99,02%. A tabela de resumo de compatibilidade abaixo detalha o suporte para cada tipo de operador.

Total Suportado Porcentagem
Estágios de agregação 60 58 96,67%
Operadores de agregação 181 181 100%
Operadores de consulta e projeção 45 44 97,78%
Operadores de atualização 22 22 100%

A seção a seguir apresenta um detalhamento abrangente de operadores de banco de dados compatíveis, comandos e mais recursos, oferecendo uma visão clara da compatibilidade e funcionalidade do produto em vários cenários.

Operadores

A tabela aqui lista os operadores com suporte no Azure DocumentDB:

Categoria Operator Com suporte (v5.0) Com suporte (v6.0) Com suporte (v7.0) Com suporte (v8.0)
Operadores de consulta de comparação $eq ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de comparação $gt ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de comparação $gte ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de comparação $in ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de comparação $lt ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de comparação $lte ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de comparação $ne ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de comparação $nin ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta lógica $and ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta lógica $not ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta lógica $nor ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta lógica $or ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de elemento $exists ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de elemento $type ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de avaliação $expr ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de avaliação $jsonSchema* ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de avaliação $mod ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de avaliação $regex ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de avaliação $text ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de avaliação $where Descontinuado no MongoDB versão 8.0
Operadores geoespaciais $geoIntersects ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $geoWithin ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $box ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $center ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $centerSphere ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $geometry ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $maxDistance ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $minDistance ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $polygon ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $near ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores geoespaciais $nearSphere ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de matriz $all ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de matriz $elemMatch ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta de matriz $size ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta bit a bit $bitsAllClear ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta bit a bit $bitsAllSet ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta bit a bit $bitsAnyClear ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta bit a bit $bitsAnySet ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de projeção $ ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de projeção $elemMatch ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de projeção $meta ❌ Não ❌ Não ❌ Não ❌ Não
Operadores de projeção $slice ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta diversos $comment ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta diversos $rand ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de consulta diversos $natural ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $currentDate ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $inc ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $min ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $max ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $mul ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $rename ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $set ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $setOnInsert ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de campo $unset ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $ ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $[] ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $[identifier] ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $addToSet ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $pop ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $pull ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $push ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $pullAll ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $each ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $position ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $slice ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização de matriz $sort ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de atualização bit a bit $bit ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $abs ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $add ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $ceil ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $divide ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $exp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $floor ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $ln ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $log ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $log10 ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $mod ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $multiply ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $pow ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $round ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $sqrt ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $subtract ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão aritmética $trunc ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $arrayElemAt ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $arrayToObject ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $concatArrays ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $filter ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $firstN ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $in ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $indexOfArray ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $isArray ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $lastN ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $map ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $maxN ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $minN ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $objectToArray ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $range ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $reduce ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $reverseArray ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $size ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $slice ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $sortArray ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de matriz $zip ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores bit a bit $bitAnd ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores bit a bit $bitNot ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores bit a bit $bitOr ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores bit a bit $bitXor ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão booliana $and ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão booliana $not ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão booliana $or ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de comparação $cmp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de comparação $eq ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de comparação $gt ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de comparação $gte ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de comparação $lt ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de comparação $lte ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de comparação $ne ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de agregação personalizada $accumulator Descontinuado no MongoDB versão 8.0
Operadores de expressão de agregação personalizada $function Descontinuado no MongoDB versão 8.0
Operadores de tamanho de dados $bsonSize ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de tamanho de dados $binarySize ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateAdd ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateDiff ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateFromParts ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateFromString ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateSubtract ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateToParts ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateToString ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dateTrunc ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dayOfMonth ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dayOfWeek ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $dayOfYear ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $hour ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $isoDayOfWeek ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $isoWeek ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $isoWeekYear ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $millisecond ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $minute ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $month ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $second ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $toDate ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $week ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de data $year ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operador de expressão literal $literal ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores diversos $getField ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores diversos $rand ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores diversos $sampleRate ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de objeto $mergeObjects ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de objeto $objectToArray ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de objeto $setField ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Definir operadores de expressão $allElementsTrue ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Definir operadores de expressão $anyElementTrue ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Definir operadores de expressão $setDifference ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Definir operadores de expressão $setEquals ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Definir operadores de expressão $setIntersection ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Definir operadores de expressão $setIsSubset ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Definir operadores de expressão $setUnion ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $concat ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $dateFromString ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $dateToString ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $indexOfBytes ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $indexOfCP ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $ltrim ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $regexFind ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $regexFindAll ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $regexMatch ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $replaceOne ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $replaceAll ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $rtrim ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $split ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $strLenBytes ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $strLenCP ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $strcasecmp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $substr ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $substrBytes ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $substrCP ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $toLower ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $toString ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $trim ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de cadeia de caracteres $toUpper ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operador de expressão de texto $meta ❌ Não ❌ Não ❌ Não ❌ Não
Operadores de expressão de carimbo de data/hora $tsIncrement ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de carimbo de data/hora $tsSecond ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $sin ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $cos ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $tan ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $asin ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $acos ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $atan ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $atan2 ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $asinh ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $acosh ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $atanh ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $sinh ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $cosh ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $tanh ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $degreesToRadians ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão trigonometria $radiansToDegrees ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $convert ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $isNumber ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toBool ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toDate ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toDecimal ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toDouble ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toInt ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toLong ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toObjectId ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $toString ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão de tipo $type ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $accumulator Descontinuado no MongoDB versão 8.0
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $addToSet ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $avg ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $bottom ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $bottomN ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $count ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $first ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $firstN ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $last ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $lastN ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $max ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $maxN ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $median ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $mergeObjects ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $min ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $percentile ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $push ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $stdDevPop ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $stdDevSamp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $sum ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $top ✅ Sim ✅ Sim ✅ Sim
Acumuladores ($group, , $bucket, $bucketAuto) $setWindowFields $topN ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $avg ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $first ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $last ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $max ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $median ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $min ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $percentile ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $stdDevPop ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $stdDevSamp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Acumuladores (em outros estágios) $sum ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão variável $let ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $sum ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $push ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $addToSet ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $count ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $max ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $min ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $avg ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $stdDevPop ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $bottom ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $bottomN ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $covariancePop ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $covarianceSamp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $denseRank ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $derivative ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $documentNumber ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $expMovingAvg ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $first ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $integral ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $last ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $linearFill ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $locf ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $minN ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $rank ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $shift ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $stdDevSamp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $top ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de janela $topN ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão condicional $cond ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão condicional $ifNull ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Operadores de expressão condicional $switch ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $addFields ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $bucket ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $bucketAuto ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $changeStream ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $changeStreamSplitLargeEvent ❌ Não ❌ Não ❌ Não ❌ Não
Estágios de pipeline de agregação $collStats ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $count ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $densify ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $documents ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $facet ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $fill ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $geoNear ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $graphLookup ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $group ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $indexStats ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $limit ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $listSampledQueries ❌ Não ❌ Não ❌ Não ❌ Não
Estágios de pipeline de agregação $listSearchIndexes ❌ Não ❌ Não ❌ Não ❌ Não
Estágios de pipeline de agregação $listSessions ❌ Não ❌ Não ❌ Não ❌ Não
Estágios de pipeline de agregação $lookup ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $match ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $merge ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $out ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $planCacheStats ❌ Não ❌ Não ❌ Não ❌ Não
Estágios de pipeline de agregação $project ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $redact ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $replaceRoot ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $replaceWith ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $sample ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $search ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $searchMeta ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $set ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $setWindowFields ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $skip ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $sort ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $sortByCount ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $unionWith ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $unset ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $unwind ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $shardedDataDistribution ❌ Não ❌ Não ❌ Não ❌ Não
Estágios de pipeline de agregação $currentOp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Estágios de pipeline de agregação $listLocalSessions ❌ Não ❌ Não ❌ Não ❌ Não
Variáveis em expressões de agregação NOW ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Variáveis em expressões de agregação ROOT ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Variáveis em expressões de agregação REMOVE ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Variáveis em expressões de agregação CURRENT ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Variáveis em expressões de agregação CLUSTER_TIME ❌ Não ❌ Não ❌ Não ❌ Não
Variáveis em expressões de agregação DESCEND ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Variáveis em expressões de agregação PRUNE ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Variáveis em expressões de agregação KEEP ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Variáveis em expressões de agregação SEARCH_META ❌ Não ❌ Não ❌ Não ❌ Não
Variáveis em expressões de agregação USER_ROLES ❌ Não ❌ Não ❌ Não ❌ Não

Observação

AvgObjsize e size em collStats & dbStats funciona apenas com documentos que têm um tamanho inferior a 2 Kbytes.

A validação de esquema dá suporte a: insert, update, findAndModify e os estágios $merge / $out na agregação. Use bypassDocumentValidation para ignorar a validação, se necessário.

Este artigo lista apenas os comandos do lado do servidor com suporte e não inclui funções de wrapper do lado do cliente. Funções de wrapper do lado do cliente, como deleteMany() e updateMany(), internamente, invocam os comandos de servidor correspondentes (delete() e update()). Qualquer função que dependa de comandos de servidor com suporte é compatível com o Azure DocumentDB.

Comandos de banco de dados

O Azure DocumentDB dá suporte aos seguintes comandos de banco de dados:

Categoria Command Recurso (v5.0) Recurso (v6.0) Recurso (v7.0) Recurso (v8.0)
Comandos administrativos cloneCollectionAsCapped ❌ Não ❌ Não ❌ Não ❌ Não
Comandos administrativos collMod ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos compact ❌ Não ❌ Não ❌ Não ❌ Não
Comandos administrativos convertToCapped ❌ Não ❌ Não ❌ Não ❌ Não
Comandos administrativos create ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos createIndexes ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos currentOp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos drop ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos dropDatabase ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos dropIndexes ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos filemd5 ❌ Não ❌ Não ❌ Não ❌ Não
Comandos administrativos getDefaultRWConcern ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos getClusterParameter N/A¹ ❌ Não ❌ Não ❌ Não
Comandos administrativos getParameter ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos killCursors ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos killOp ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos listCollections ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos listDatabases ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos listIndexes ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos reIndex ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos renameCollection ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos setIndexCommitQuorum ❌ Não ❌ Não ❌ Não ❌ Não
Comandos administrativos setParameter ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos administrativos setDefaultRWConcern ❌ Não ❌ Não ❌ Não ❌ Não
Comandos administrativos validateDBMetadata ❌ Não ❌ Não ❌ Não ❌ Não
Comandos administrativos dropConnections N/A² N/A² N/A² N/A²
Comandos administrativos fsync N/A² N/A² N/A² N/A²
Comandos administrativos fsyncUnlock N/A² N/A² N/A² N/A²
Comandos administrativos logRotate N/A² N/A² N/A² N/A²
Comandos administrativos rotateCertificates N/A² N/A² N/A² N/A²
Comandos administrativos setFeatureCompatibilityVersion N/A² N/A² N/A² N/A²
Comandos administrativos shutdown N/A² N/A² N/A² N/A²
Comandos administrativos compactStructuredEncryptionData N/A² N/A² N/A² N/A²
Comandos administrativos setUserWriteBlockMode N/A² N/A² N/A² N/A²
Comandos de agregação aggregate ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de agregação count ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de agregação distinct ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de agregação mapReduce N/A N/A N/A N/A
Comandos de autenticação authenticate ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de autenticação logout N/A N/A N/A N/A
Comandos de diagnóstico buildInfo ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico collStats ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico connPoolStats ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de diagnóstico connectionStatus ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico dataSize ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de diagnóstico dbHash ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de diagnóstico dbStats ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico explain ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico getCmdLineOpts ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico getLog ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico hello ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico hostInfo ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico listCommands ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico lockInfo ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de diagnóstico ping ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico profile N/A² N/A² N/A² N/A²
Comandos de diagnóstico serverStatus ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de diagnóstico shardConnPoolStats N/A N/A N/A N/A
Comandos de diagnóstico top ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de diagnóstico validate ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de diagnóstico whatsmyuri ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos geoespaciais geoSearch N/A N/A N/A N/A
Comandos de operação de consulta e gravação bulkWrite ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de operação de consulta e gravação delete ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de operação de consulta e gravação find ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de operação de consulta e gravação findAndModify ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de operação de consulta e gravação getLastError N/A N/A N/A N/A
Comandos de operação de consulta e gravação getMore ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de operação de consulta e gravação insert ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de operação de consulta e gravação resetError N/A N/A N/A N/A
Comandos de operação de consulta e gravação update ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de cache do plano de consulta N/A
Comandos de replicação N/A
Comandos de Gerenciamento de Função N/A
Comandos de sessão abortTransaction ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de sessão commitTransaction ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de sessão endSessions ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de sessão killAllSessions ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de sessão killAllSessionsByPattern ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de sessão killSessions ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de sessão refreshSessions ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de sessão startSession ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de fragmentação enableSharding ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de fragmentação isdbgrid ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de fragmentação reshardCollection ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de fragmentação shardCollection ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de fragmentação unsetSharding N/A N/A N/A N/A
Comandos de fragmentação addShardToZone N/A N/A N/A N/A
Comandos de fragmentação clearJumboFlag N/A N/A N/A N/A
Comandos de fragmentação abortUnshardCollection N/A N/A N/A N/A
Comandos de fragmentação removeShard N/A N/A N/A N/A
Comandos de fragmentação removeShardFromZone N/A N/A N/A N/A
Comandos de fragmentação setShardVersion N/A N/A N/A N/A
Comandos de fragmentação mergeChunks N/A N/A N/A N/A
Comandos de fragmentação abortMoveCollection N/A N/A N/A N/A
Comandos de fragmentação getShardMap N/A N/A N/A N/A
Comandos de fragmentação analyzeShardKey N/A N/A N/A N/A
Comandos de fragmentação medianKey N/A N/A N/A N/A
Comandos de fragmentação checkMetadataConsistency N/A N/A N/A N/A
Comandos de fragmentação shardingState N/A N/A N/A N/A
Comandos de fragmentação cleanupReshardCollection N/A N/A N/A N/A
Comandos de fragmentação flushRouterConfig N/A N/A N/A N/A
Comandos de fragmentação balancerCollectionStatus N/A N/A N/A N/A
Comandos de fragmentação balancerStart N/A N/A N/A N/A
Comandos de fragmentação balancerStatus N/A N/A N/A N/A
Comandos de fragmentação balancerStop N/A N/A N/A N/A
Comandos de fragmentação configureCollectionBalancing N/A N/A N/A N/A
Comandos de fragmentação listShards N/A N/A N/A N/A
Comandos de fragmentação split N/A N/A N/A N/A
Comandos de fragmentação moveChunk N/A N/A N/A N/A
Comandos de fragmentação updateZoneKeyRange N/A N/A N/A N/A
Comandos de fragmentação movePrimary N/A N/A N/A N/A
Comandos de fragmentação moveRange N/A N/A N/A N/A
Comandos de fragmentação abortReshardCollection N/A N/A N/A N/A
Comandos de fragmentação commitReshardCollection N/A N/A N/A N/A
Comandos de fragmentação refineCollectionShardKey N/A N/A N/A N/A
Comandos de fragmentação configureQueryAnalyzer N/A N/A N/A N/A
Comandos de fragmentação transitionFromDedicatedConfigServer N/A N/A N/A N/A
Comandos de fragmentação transitionToDedicatedConfigServer N/A N/A N/A N/A
Comandos de fragmentação unshardCollection N/A N/A N/A N/A
Comandos de auditoria de eventos do sistema logApplicationMessage ❌ Não ❌ Não ❌ Não ❌ Não
Comandos de Gerenciamento de Usuário createUser ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de Gerenciamento de Usuário dropUser ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de Gerenciamento de Usuário usersInfo ✅ Sim ✅ Sim ✅ Sim ✅ Sim
Comandos de Gerenciamento de Usuário dropAllUsersFromDatabase N/A N/A N/A N/A
Comandos de Gerenciamento de Usuário grantRolesToUser N/A N/A N/A N/A
Comandos de Gerenciamento de Usuário revokeRolesFromUser N/A N/A N/A N/A
Comandos de Gerenciamento de Usuário updateUser N/A N/A N/A N/A

Observação

  1. getClusterParameter não há suporte na v5.0.
  2. O Azure gerencia totalmente o Azure DocumentDB, um serviço de PaaS, para comandos como dropConnections, fsyncetc logRotate.
  3. Descontinuado no MongoDB na versão 5.0.
  4. Descontinuado no MongoDB na versão 5.1.
  5. Sendo um serviço de PaaS, o motor de banco de dados encarrega-se de gerenciar o cache do plano de consulta para você.
  6. O Azure gerencia a replicação, removendo a necessidade de replicar manualmente.
  7. Como um serviço totalmente gerenciado, essa funcionalidade é fornecida por meio da ID do Microsoft Entra.
  8. Como uma oferta de PaaS, o Azure lida com o gerenciamento e o reequilíbrio de shards. Você só precisa fragmentar suas coleções. O Azure cuida do resto.

Tipos de índice

O Azure DocumentDB dá suporte aos seguintes tipos de índice:

Index Description Suportado
Índice de campo único Indexa um único campo para pesquisas mais rápidas. ✅ Sim
Índice composto Indexa vários campos em um índice. ✅ Sim
Índice de várias chaves Indexa campos de matriz indexando cada elemento. ✅ Sim
Índice de texto Dá suporte à pesquisa de texto em campos de cadeia de caracteres. ✅ Sim
Índice curinga Indexa dinamicamente todos ou campos selecionados. ✅ Sim
Índice geoespacial Dá suporte a consultas espaciais em dados GeoJSON. ✅ Sim
Índice de hash Indexa valores de campos hash, geralmente para fragmentação. ✅ Sim
Índice de vetor (somente no DocumentDB) Habilita a pesquisa de similaridade em dados de vetor. ✅ Sim, com pesquisa vetorial

Observação

A criação de um índice exclusivo obtém um bloqueio exclusivo na coleção por toda a duração do processo de compilação. Esses índices bloqueiam operações de leitura e gravação na coleção até que a operação seja concluída.

Propriedades de índice

O Azure DocumentDB dá suporte às seguintes propriedades de índice:

Propriedade Index Description Suportado
vida útil (TTL) Exclui automaticamente documentos após um período de vida útil especificado. ✅ Sim
Único Garante que todos os valores no campo indexado sejam exclusivos. ✅ Sim
Parcial Indexa apenas documentos que correspondem a uma condição de filtro especificada. ✅ Sim
Não diferencia maiúsculas de minúsculas Dá suporte à indexação que não diferencia maiúsculas de minúsculas para campos de cadeia de caracteres. ✅ Sim
Esparsos Indexa apenas documentos que contêm o campo indexado. ✅ Sim
Contexto Permite que o índice seja criado em segundo plano sem bloquear operações. ✅ Sim