Condividi tramite


Compatibilità MQL (MongoDB Query Language) in Azure DocumentDB

Azure DocumentDB offre una compatibilità MQL (MongoDB Query Language) completa, combinando le funzionalità familiari di MongoDB con le funzionalità aziendali di Azure. Questo articolo offre una panoramica della compatibilità e delle funzionalità MQL nelle versioni 5.0-8.0, inclusi operatori, comandi, indici e protocollo di collegamento MongoDB. Le applicazioni possono essere eseguite senza modifiche al codice, usando gli stessi driver client, SDK e strumenti. Gli utenti traggono vantaggio dalla scalabilità, dalla sicurezza e dall'integrazione di Azure con altri servizi di Azure.

Supporto del protocollo di rete

Il servizio Azure DocumentDB usa il protocollo di collegamento MongoDB, che offre una perfetta compatibilità con gli strumenti e i driver esistenti. Qualsiasi driver client che supporta il protocollo di collegamento MongoDB può connettersi ad Azure DocumentDB, in modo che le applicazioni possano essere eseguite senza modifiche al codice.

Gli sviluppatori possono mantenere gli stessi driver client, sdk (Software Development Kit) e strumenti. Gli utenti ottengono anche scalabilità, sicurezza e integrazione approfondita di Azure con altri servizi all'interno della piattaforma Azure.

Linguaggi di query supportati

Oltre al supporto del protocollo, Azure DocumentDB offre supporto completo anche per i costrutti del linguaggio di query MongoDB.

Filosofia di compatibilità

La compatibilità complessiva del prodotto è determinata dalla valutazione del numero di operatori MongoDB (fasi di aggregazione, operatori di aggregazione, operatori di query e operatori di proiezione e operatori di aggiornamento) supportati dal servizio. I comandi e le operazioni di amministrazione di MongoDB vengono esclusi da questo calcolo perché Azure DocumentDB, come offerta PaaS, supporta la maggior parte di questi comandi interni, eliminando la necessità di intervento dell'utente. Questi comandi non sono esposti agli utenti; Tuttavia, in base ai modelli di utilizzo e al feedback dei clienti, è disponibile un subset di comandi di uso comune per semplificare l'esperienza utente.

La compatibilità complessiva del prodotto oggi è pari a 99,02%. La tabella di riepilogo della compatibilità seguente illustra il supporto per ogni tipo di operatore:

Total Sostenuto Percentuale
Fasi di aggregazione 60 58 96.67%
Operatori di aggregazione 181 181 100%
Operatori di query e proiezione 45 44 97.78%
Operatori di aggiornamento 22 22 100%

La sezione seguente presenta una suddivisione completa degli operatori di database supportati, dei comandi e di altre funzionalità, offrendo una visione chiara della compatibilità e delle funzionalità del prodotto in vari scenari.

Operatori

La tabella seguente elenca gli operatori attualmente supportati in Azure DocumentDB:

Categoria Operator Supportato (v5.0) Supportato (v6.0) Supportato (v7.0) Supportato (v8.0)
Operatori di query di confronto $eq ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di confronto $gt ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di confronto $gte ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di confronto $in ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di confronto $lt ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di confronto $lte ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di confronto $ne ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di confronto $nin ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query logiche $and ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query logiche $not ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query logiche $nor ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query logiche $or ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query sugli elementi $exists ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query sugli elementi $type ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di valutazione $expr ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di valutazione $jsonSchema* ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di valutazione $mod ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di valutazione $regex ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di valutazione $text ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query di valutazione $where Deprecato in Mongo versione 8.0
Operatori geospaziali $geoIntersects ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $geoWithin ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $box ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $center ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $centerSphere ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $geometry ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $maxDistance ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $minDistance ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $polygon ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $near ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori geospaziali $nearSphere ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query su matrici $all ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query su matrici $elemMatch ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query su matrici $size ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query bit per bit $bitsAllClear ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query bit per bit $bitsAllSet ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query bit per bit $bitsAnyClear ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query bit per bit $bitsAnySet ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di proiezione $ ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di proiezione $elemMatch ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di proiezione $meta ❌ No ❌ No ❌ No ❌ No
Operatori di proiezione $slice ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query varie $comment ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query varie $rand ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di query varie $natural ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $currentDate ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $inc ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $min ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $max ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $mul ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $rename ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $set ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $setOnInsert ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di campo $unset ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $ ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $[] ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $[identifier] ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $addToSet ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $pop ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $pull ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $push ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $pullAll ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $each ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $position ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $slice ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di aggiornamento di matrice $sort ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatore di aggiornamento bit per bit $bit ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $abs ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $add ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $ceil ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $divide ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $exp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $floor ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $ln ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $log ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $log10 ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $mod ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $multiply ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $pow ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $round ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $sqrt ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $subtract ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni aritmetiche $trunc ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $arrayElemAt ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $arrayToObject ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $concatArrays ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $filter ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $firstN ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $in ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $indexOfArray ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $isArray ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $lastN ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $map ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $maxN ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $minN ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $objectToArray ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $range ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $reduce ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $reverseArray ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $size ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $slice ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $sortArray ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di matrici $zip ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori bit per bit $bitAnd ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori bit per bit $bitNot ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori bit per bit $bitOr ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori bit per bit $bitXor ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni booleane $and ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni booleane $not ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni booleane $or ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di confronto $cmp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di confronto $eq ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di confronto $gt ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di confronto $gte ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di confronto $lt ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di confronto $lte ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di confronto $ne ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di aggregazione personalizzati $accumulator Deprecato in Mongo versione 8.0
Operatori di espressioni di aggregazione personalizzati $function Deprecato in Mongo versione 8.0
Operatori di dimensioni dati $bsonSize ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di dimensioni dati $binarySize ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateAdd ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateDiff ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateFromParts ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateFromString ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateSubtract ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateToParts ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateToString ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dateTrunc ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dayOfMonth ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dayOfWeek ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $dayOfYear ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $hour ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $isoDayOfWeek ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $isoWeek ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $isoWeekYear ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $millisecond ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $minute ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $month ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $second ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $toDate ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $week ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di date $year ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni letterali $literal ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori vari $getField ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori vari $rand ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori vari $sampleRate ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di oggetti $mergeObjects ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di oggetti $objectToArray ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di oggetti $setField ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di impostazione $allElementsTrue ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di impostazione $anyElementTrue ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di impostazione $setDifference ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di impostazione $setEquals ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di impostazione $setIntersection ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di impostazione $setIsSubset ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di impostazione $setUnion ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $concat ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $dateFromString ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $dateToString ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $indexOfBytes ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $indexOfCP ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $ltrim ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $regexFind ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $regexFindAll ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $regexMatch ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $replaceOne ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $replaceAll ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $rtrim ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $split ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $strLenBytes ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $strLenCP ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $strcasecmp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $substr ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $substrBytes ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $substrCP ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $toLower ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $toString ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $trim ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni stringa $toUpper ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di testo $meta ❌ No ❌ No ❌ No ❌ No
Operatori di espressioni timestamp $tsIncrement ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni timestamp $tsSecond ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $sin ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $cos ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $tan ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $asin ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $acos ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $atan ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $atan2 ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $asinh ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $acosh ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $atanh ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $sinh ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $cosh ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $tanh ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $degreesToRadians ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di trigonometria $radiansToDegrees ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $convert ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $isNumber ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toBool ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toDate ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toDecimal ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toDouble ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toInt ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toLong ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toObjectId ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $toString ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di tipo $type ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $accumulator Deprecato in Mongo versione 8.0
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $addToSet ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $avg ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $bottom ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $bottomN ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $count ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $first ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $firstN ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $last ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $lastN ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $max ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $maxN ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $median ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $mergeObjects ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $min ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $percentile ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $push ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $stdDevPop ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $stdDevSamp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $sum ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $top ✅ Sì ✅ Sì ✅ Sì
Accumulatori ($group, $bucket, $bucketAuto, $setWindowFields) $topN ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $avg ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $first ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $last ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $max ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $median ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $min ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $percentile ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $stdDevPop ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $stdDevSamp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Accumulatori (in altre fasi) $sum ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni di variabile $let ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $sum ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $push ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $addToSet ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $count ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $max ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $min ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $avg ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $stdDevPop ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $bottom ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $bottomN ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $covariancePop ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $covarianceSamp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $denseRank ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $derivative ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $documentNumber ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $expMovingAvg ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $first ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $integral ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $last ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $linearFill ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $locf ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $minN ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $rank ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $shift ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $stdDevSamp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $top ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di finestra $topN ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni condizionali $cond ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni condizionali $ifNull ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Operatori di espressioni condizionali $switch ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $addFields ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $bucket ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $bucketAuto ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $changeStream ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $changeStreamSplitLargeEvent ❌ No ❌ No ❌ No ❌ No
Fasi della pipeline di aggregazione $collStats ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $count ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $densify ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $documents ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $facet ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $fill ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $geoNear ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $graphLookup ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $group ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $indexStats ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $limit ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $listSampledQueries ❌ No ❌ No ❌ No ❌ No
Fasi della pipeline di aggregazione $listSearchIndexes ❌ No ❌ No ❌ No ❌ No
Fasi della pipeline di aggregazione $listSessions ❌ No ❌ No ❌ No ❌ No
Fasi della pipeline di aggregazione $lookup ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $match ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $merge ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $out ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $planCacheStats ❌ No ❌ No ❌ No ❌ No
Fasi della pipeline di aggregazione $project ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $redact ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $replaceRoot ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $replaceWith ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $sample ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $search ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $searchMeta ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $set ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $setWindowFields ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $skip ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $sort ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $sortByCount ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $unionWith ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $unset ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $unwind ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $shardedDataDistribution ❌ No ❌ No ❌ No ❌ No
Fasi della pipeline di aggregazione $currentOp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Fasi della pipeline di aggregazione $listLocalSessions ❌ No ❌ No ❌ No ❌ No
Variabili nelle espressioni di aggregazione NOW ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Variabili nelle espressioni di aggregazione ROOT ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Variabili nelle espressioni di aggregazione REMOVE ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Variabili nelle espressioni di aggregazione CURRENT ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Variabili nelle espressioni di aggregazione CLUSTER_TIME ❌ No ❌ No ❌ No ❌ No
Variabili nelle espressioni di aggregazione DESCEND ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Variabili nelle espressioni di aggregazione PRUNE ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Variabili nelle espressioni di aggregazione KEEP ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Variabili nelle espressioni di aggregazione SEARCH_META ❌ No ❌ No ❌ No ❌ No
Variabili nelle espressioni di aggregazione USER_ROLES ❌ No ❌ No ❌ No ❌ No

Annotazioni

AvgObjsizee in size e collStatsdbStats funziona solo con documenti di dimensioni inferiori a 2 kilobyte.

La convalida dello schema supporta: insert, update, findAndModify, e le fasi $merge / $out durante l'aggregazione. Usare bypassDocumentValidation per ignorare la convalida, se necessario.

Questo articolo elenca solo i comandi lato server supportati e non include funzioni wrapper lato client. Le funzioni wrapper lato client, ad esempio deleteMany() e updateMany(), richiamano internamente i comandi server corrispondenti (delete() e update()). Qualsiasi funzione che si basa su comandi server supportati è compatibile con Azure DocumentDB.

Comandi del database

Azure DocumentDB supporta i comandi di database seguenti:

Categoria Command Funzionalità (v5.0) Funzionalità (v6.0) Funzionalità (v7.0) Funzionalità (v8.0)
Comandi amministrativi cloneCollectionAsCapped ❌ No ❌ No ❌ No ❌ No
Comandi amministrativi collMod ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi compact ❌ No ❌ No ❌ No ❌ No
Comandi amministrativi convertToCapped ❌ No ❌ No ❌ No ❌ No
Comandi amministrativi create ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi createIndexes ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi currentOp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi drop ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi dropDatabase ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi dropIndexes ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi filemd5 ❌ No ❌ No ❌ No ❌ No
Comandi amministrativi getDefaultRWConcern ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi getClusterParameter N/A¹ ❌ No ❌ No ❌ No
Comandi amministrativi getParameter ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi killCursors ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi killOp ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi listCollections ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi listDatabases ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi listIndexes ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi reIndex ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi renameCollection ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi setIndexCommitQuorum ❌ No ❌ No ❌ No ❌ No
Comandi amministrativi setParameter ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi amministrativi setDefaultRWConcern ❌ No ❌ No ❌ No ❌ No
Comandi amministrativi validateDBMetadata ❌ No ❌ No ❌ No ❌ No
Comandi amministrativi dropConnections N/A² N/A² N/A² N/A²
Comandi amministrativi fsync N/A² N/A² N/A² N/A²
Comandi amministrativi fsyncUnlock N/A² N/A² N/A² N/A²
Comandi amministrativi logRotate N/A² N/A² N/A² N/A²
Comandi amministrativi rotateCertificates N/A² N/A² N/A² N/A²
Comandi amministrativi setFeatureCompatibilityVersion N/A² N/A² N/A² N/A²
Comandi amministrativi shutdown N/A² N/A² N/A² N/A²
Comandi amministrativi compactStructuredEncryptionData N/A² N/A² N/A² N/A²
Comandi amministrativi setUserWriteBlockMode N/A² N/A² N/A² N/A²
Comandi di aggregazione aggregate ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di aggregazione count ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di aggregazione distinct ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di aggregazione mapReduce N/A² N/A² N/A² N/A²
Comandi di autenticazione authenticate ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di autenticazione logout N/A² N/A² N/A² N/A²
Comandi di diagnostica buildInfo ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica collStats ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica connPoolStats ❌ No ❌ No ❌ No ❌ No
Comandi di diagnostica connectionStatus ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica dataSize ❌ No ❌ No ❌ No ❌ No
Comandi di diagnostica dbHash ❌ No ❌ No ❌ No ❌ No
Comandi di diagnostica dbStats ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica explain ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica getCmdLineOpts ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica getLog ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica hello ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica hostInfo ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica listCommands ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica lockInfo ❌ No ❌ No ❌ No ❌ No
Comandi di diagnostica ping ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica profile N/A² N/A² N/A² N/A²
Comandi di diagnostica serverStatus ❌ No ❌ No ❌ No ❌ No
Comandi di diagnostica shardConnPoolStats N/A² N/A² N/A² N/A²
Comandi di diagnostica top ❌ No ❌ No ❌ No ❌ No
Comandi di diagnostica validate ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di diagnostica whatsmyuri ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi geospaziali geoSearch N/A² N/A² N/A² N/A²
Comandi per le operazioni di query e scrittura bulkWrite ❌ No ❌ No ❌ No ❌ No
Comandi per le operazioni di query e scrittura delete ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi per le operazioni di query e scrittura find ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi per le operazioni di query e scrittura findAndModify ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi per le operazioni di query e scrittura getLastError N/A N/A N/A N/A
Comandi per le operazioni di query e scrittura getMore ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi per le operazioni di query e scrittura insert ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi per le operazioni di query e scrittura resetError N/A² N/A² N/A² N/A²
Comandi per le operazioni di query e scrittura update ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi della cache dei piani di query N/A
Comandi di replica N/A
Comandi di gestione dei ruoli N/A
Comandi di sessione abortTransaction ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di sessione commitTransaction ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di sessione endSessions ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di sessione killAllSessions ❌ No ❌ No ❌ No ❌ No
Comandi di sessione killAllSessionsByPattern ❌ No ❌ No ❌ No ❌ No
Comandi di sessione killSessions ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di sessione refreshSessions ❌ No ❌ No ❌ No ❌ No
Comandi di sessione startSession ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di partizionamento orizzontale enableSharding ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di partizionamento orizzontale isdbgrid ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di partizionamento orizzontale reshardCollection ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di partizionamento orizzontale shardCollection ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di partizionamento orizzontale unsetSharding N/A² N/A² N/A² N/A²
Comandi di partizionamento orizzontale addShardToZone N/A N/A N/A N/A
Comandi di partizionamento orizzontale clearJumboFlag N/A N/A N/A N/A
Comandi di partizionamento orizzontale abortUnshardCollection N/A N/A N/A N/A
Comandi di partizionamento orizzontale removeShard N/A N/A N/A N/A
Comandi di partizionamento orizzontale removeShardFromZone N/A N/A N/A N/A
Comandi di partizionamento orizzontale setShardVersion N/A N/A N/A N/A
Comandi di partizionamento orizzontale mergeChunks N/A N/A N/A N/A
Comandi di partizionamento orizzontale abortMoveCollection N/A N/A N/A N/A
Comandi di partizionamento orizzontale getShardMap N/A N/A N/A N/A
Comandi di partizionamento orizzontale analyzeShardKey N/A N/A N/A N/A
Comandi di partizionamento orizzontale medianKey N/A N/A N/A N/A
Comandi di partizionamento orizzontale checkMetadataConsistency N/A N/A N/A N/A
Comandi di partizionamento orizzontale shardingState N/A N/A N/A N/A
Comandi di partizionamento orizzontale cleanupReshardCollection N/A N/A N/A N/A
Comandi di partizionamento orizzontale flushRouterConfig N/A N/A N/A N/A
Comandi di partizionamento orizzontale balancerCollectionStatus N/A N/A N/A N/A
Comandi di partizionamento orizzontale balancerStart N/A N/A N/A N/A
Comandi di partizionamento orizzontale balancerStatus N/A N/A N/A N/A
Comandi di partizionamento orizzontale balancerStop N/A N/A N/A N/A
Comandi di partizionamento orizzontale configureCollectionBalancing N/A N/A N/A N/A
Comandi di partizionamento orizzontale listShards N/A N/A N/A N/A
Comandi di partizionamento orizzontale split N/A N/A N/A N/A
Comandi di partizionamento orizzontale moveChunk N/A N/A N/A N/A
Comandi di partizionamento orizzontale updateZoneKeyRange N/A N/A N/A N/A
Comandi di partizionamento orizzontale movePrimary N/A N/A N/A N/A
Comandi di partizionamento orizzontale moveRange N/A N/A N/A N/A
Comandi di partizionamento orizzontale abortReshardCollection N/A N/A N/A N/A
Comandi di partizionamento orizzontale commitReshardCollection N/A N/A N/A N/A
Comandi di partizionamento orizzontale refineCollectionShardKey N/A N/A N/A N/A
Comandi di partizionamento orizzontale configureQueryAnalyzer N/A N/A N/A N/A
Comandi di partizionamento orizzontale transitionFromDedicatedConfigServer N/A N/A N/A N/A
Comandi di partizionamento orizzontale transitionToDedicatedConfigServer N/A N/A N/A N/A
Comandi di partizionamento orizzontale unshardCollection N/A N/A N/A N/A
Comandi di controllo degli eventi di sistema logApplicationMessage ❌ No ❌ No ❌ No ❌ No
Comandi di gestione degli utenti createUser ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di gestione degli utenti dropUser ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di gestione degli utenti usersInfo ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Comandi di gestione degli utenti dropAllUsersFromDatabase N/A N/A N/A N/A
Comandi di gestione degli utenti grantRolesToUser N/A N/A N/A N/A
Comandi di gestione degli utenti revokeRolesFromUser N/A N/A N/A N/A
Comandi di gestione degli utenti updateUser N/A N/A N/A N/A

Annotazioni

  1. getClusterParameter non è supportato nella versione 5.0.
  2. Azure gestisce completamente Azure DocumentDB, un servizio PaaS, per i comandi come dropConnections, fsync, logRotatee così via.
  3. Deprecato in MongoDB versione 5.0.
  4. Deprecato in MongoDB versione 5.1.
  5. Essendo un servizio PaaS, il motore di database gestisce la memorizzazione nella cache del piano di query per te.
  6. Azure gestisce la replica, rimuovendo la necessità di replicare manualmente.
  7. Come servizio completamente gestito, questa funzionalità viene fornita tramite Microsoft Entra ID.
  8. Come offerta PaaS, Azure gestisce la gestione delle partizioni e il ribilanciamento. È sufficiente partizionare le raccolte. Azure si occupa del resto.

Tipi di indice

Azure DocumentDB supporta i tipi di indice seguenti:

Index Description Sostenuto
Indice campo singolo Indicizza un singolo campo per ricerche più veloci. ✅ Sì
Indice composto Indicizza più campi in un indice. ✅ Sì
Indice multichiave Indicizza i campi della matrice tramite l'indicizzazione di ogni elemento. ✅ Sì
Indice di testo Supporta la ricerca di testo nei campi stringa. ✅ Sì
Indice dei caratteri jolly Indicizza dinamicamente tutti i campi o solo quelli selezionati. ✅ Sì
Indice geospaziale Supporta query spaziali sui dati GeoJSON. ✅ Sì
Indice con hash Indicizza i valori dei campi con hash, spesso per il partizionamento orizzontale. ✅ Sì
Vector Index (solo in DocumentDB) Abilita la ricerca di somiglianza sui dati vettoriali. ✅ Sì, con ricerca vettoriale

Annotazioni

La creazione di un indice univoco ottiene un blocco esclusivo sulla raccolta per l'intera durata del processo di compilazione. Questi indici bloccano le operazioni di lettura e scrittura nella raccolta fino al completamento dell'operazione.

Proprietà degli indici

Azure DocumentDB supporta le proprietà di indice seguenti:

Proprietà Index Description Sostenuto
durata (TTL) Elimina automaticamente i documenti dopo un periodo di durata specificato. ✅ Sì
Unico Assicura che tutti i valori nel campo indicizzato siano univoci. ✅ Sì
Parziale Indicizza solo i documenti che corrispondono a una condizione di filtro specificata. ✅ Sì
Case Insensitive Supporta l'indicizzazione senza distinzione tra maiuscole e minuscole per i campi stringa. ✅ Sì
Sparse Indicizza solo i documenti che contengono il campo indicizzato. ✅ Sì
Background Consente di creare l'indice in background senza bloccare le operazioni. ✅ Sì