MongoDB-kompatibilitet och funktionsstöd med Azure Cosmos DB för MongoDB vCore
GÄLLER FÖR: MongoDB vCore
Med Azure Cosmos DB for MongoDB vCore kan du uppleva de välbekanta MongoDB-fördelarna samtidigt som du får åtkomst till de förbättrade företagsfunktioner som erbjuds av Azure Cosmos DB. Det säkerställer kompatibilitet genom att följa MongoDB-trådprotokollet, så att du kan utnyttja befintliga klientdrivrutiner, SDK:er och andra verktyg som du redan är bekant med.
Protokollstöd
De operatorer som stöds och eventuella begränsningar eller undantag visas här. Alla klientdrivrutiner som förstår dessa protokoll bör kunna ansluta till Azure Cosmos DB för MongoDB. När du skapar Azure Cosmos DB för MongoDB vCore-kluster är slutpunkten i formatet *.mongocluster.cosmos.azure.com
.
Stöd för frågespråk
Azure Cosmos DB for MongoDB ger omfattande stöd för MongoDB-frågespråkskonstruktioner. Nedan hittar du en detaljerad lista över databaskommandon, operatorer, steg och alternativ som stöds.
Kommentar
Den här artikeln visar bara de serverkommandon som stöds och exkluderar omslutningsfunktioner på klientsidan. Omslutningsfunktioner på klientsidan, till exempel deleteMany()
och updateMany()
internt, använder kommandona delete()
och update()
server. Funktioner som använder serverkommandon som stöds är kompatibla med Azure Cosmos DB för MongoDB.
Databaskommandon
Azure Cosmos DB for MongoDB vCore stöder följande databaskommandon:
Kategori | Kommando | Funktion | ||
v5.0 | v6.0 | v7.0 | ||
Sammansättningskommandon | aggregat | |||
count | ||||
distinct | ||||
mapReduce | Inaktuell i MongoDB 5.0 | |||
Autentiseringskommandon | authenticate | |||
getnonce | Inaktuell i MongoDB 4.0 | |||
logout | Inaktuell i MongoDB 5.0 | |||
Geospatiala kommandon | geoSearch | Inaktuell i MongoDB 5.0 | ||
Cachekommandon för frågeplan | ||||
Administrativa kommandon | cloneCollectionAsCapped | Nej, begränsade samlingar stöds för närvarande inte. | ||
collMod | ||||
compact | ||||
convertToCapped | Nej. Begränsade samlingar stöds för närvarande inte. | |||
create | ||||
createIndexes | ||||
currentOp | ||||
drop | ||||
dropDatabase | ||||
dropConnections | Som En PaaS-tjänst hanteras detta av Azure. | |||
dropIndexes | ||||
filemd5 | ||||
fsync | Som En PaaS-tjänst hanteras detta av Azure. | |||
fsyncUnlock | Som En PaaS-tjänst hanteras detta av Azure. | |||
getDefaultRWConcern | ||||
getClusterParameter | ||||
getParameter | ||||
killCursors | ||||
killOp | ||||
listCollections | ||||
listDatabases | ||||
listIndexes | ||||
logRotate | Som En PaaS-tjänst hanteras detta av Azure. | |||
reIndex | ||||
renameCollection | ||||
rotateCertificates | Som En PaaS-tjänst hanteras detta av Azure. | |||
setFeatureCompatibilityVersion | Som En PaaS-tjänst hanteras detta av Azure. | |||
setIndexCommitQuorum | ||||
setParameter | ||||
setDefaultRWConcern | ||||
shutdown | Som En PaaS-tjänst hanteras detta av Azure. | |||
Kommandon för användar- och rollhantering | Stöds inte i dag, men kommer att göras tillgängligt via Azure Active Directory i framtiden. | |||
Replikeringskommandon | Azure hanterar replikering, vilket tar bort behovet för kunder att replikera manuellt. | |||
Partitioneringskommandon | enableSharding | |||
isdbgrid | ||||
reshardCollection | ||||
shardCollection | ||||
unsetSharding | Inaktuell i MongoDB 5.0 | |||
addShard | Som ett PaaS-erbjudande (Platform-as-a-Service) hanterar Azure shard management och ombalansering. Användarna behöver bara ange horisontell partitioneringsstrategi för samlingarna så hanterar Azure resten. | |||
addShardToZone | ||||
clearJumboFlag | ||||
cleanupOrphaned | ||||
removeShard | ||||
removeShardFromZone | ||||
setShardVersion | ||||
mergeChunks | ||||
checkShardingIndex | ||||
getShardMap | ||||
getShardVersion | ||||
medianKey | ||||
splitVector | ||||
shardingState | ||||
cleanupReshardCollection | ||||
flushRouterConfig | ||||
balancerCollectionStatus | ||||
balancerStart | ||||
balancerStatus | ||||
balancerStop | ||||
configureCollectionBalancing | ||||
listShards | ||||
split | ||||
moveChunk | ||||
updateZoneKeyRange | ||||
movePrimary | ||||
abortReshardCollection | ||||
commitReshardCollection | ||||
refineCollectionShardKey | ||||
Kommandon för fråge- och skrivåtgärder | change streams | |||
delete | ||||
find | ||||
findAndModify | ||||
getLastError | Inaktuell i MongoDB 5.1 | |||
getMore | ||||
insert | ||||
resetError | Inaktuell i MongoDB 5.0 | |||
update | ||||
Sessionskommandon | abortTransaction | |||
commitTransaction | ||||
endSessions | ||||
killAllSessions | ||||
killAllSessionsByPattern | ||||
killSessions | ||||
refreshSessions | ||||
startSession | ||||
Diagnostikkommandon | availableQueryOptions | |||
buildInfo | ||||
collStats | ||||
connPoolStats | ||||
connectionStatus | ||||
dataSize | ||||
dbHash | ||||
dbStats | ||||
driverOIDTest | Som En PaaS-tjänst hanteras detta av Azure. | |||
explain | ||||
features | Som En PaaS-tjänst hanteras detta av Azure. | |||
getCmdLineOpts | ||||
getLog | ||||
hello | ||||
hostInfo | ||||
_isSelf | ||||
listCommands | ||||
lockInfo | ||||
netstat | ||||
ping | ||||
profile | Som En PaaS-tjänst hanteras detta av Azure. | |||
serverStatus | ||||
shardConnPoolStats | Inaktuell i MongoDB 5.0 | |||
top | ||||
validate | ||||
whatsmyuri | ||||
Granskningskommandon för systemhändelser | logApplicationMessage |
Operatorer
Nedan visas listan över operatorer som för närvarande stöds på Azure Cosmos DB för MongoDB vCore:
Kommentar
AvgObjsize och storlek i "collStats" & "dbStats" fungerar endast med dokumentstorlek som är mindre än 2 KB.
Kategori | Kommando | Funktion | ||
v5.0 | v6.0 | v7.0 | ||
Jämförelsefrågaoperatorer | $eq | |||
$gt | ||||
$gte | ||||
$in | ||||
$lt | ||||
$lte | ||||
$ne | ||||
$nin | ||||
Logiska frågeoperatorer | $and | |||
$not | ||||
$nor | ||||
$or | ||||
Elementfrågeoperatorer | $exists | |||
$type | ||||
Frågeoperatorer för utvärdering | $expr | |||
$jsonSchema | ||||
$mod | ||||
$regex | ||||
$text | ||||
$where | ||||
Geospatiala operatorer | $geoIntersects | |||
$geoWithin | ||||
$box | ||||
$center | ||||
$centerSphere | ||||
$geometry | ||||
$maxDistance | ||||
$minDistance | ||||
$polygon | ||||
$near | ||||
$nearSphere | ||||
Matrisfrågeoperatorer | $all | |||
$elemMatch | ||||
$size | ||||
Bitvis frågeoperatorer | $bitsAllClear | |||
$bitsAllSet | ||||
$bitsAnyClear | ||||
$bitsAnySet | ||||
Projektionsoperatorer | $ | |||
$elemMatch | ||||
$meta | ||||
$slice | ||||
Diverse frågeoperatorer | $comment | |||
$rand | ||||
$natural | ||||
Fältuppdateringsoperatorer | $currentDate | |||
$inc | ||||
$min | ||||
$max | ||||
$mul | ||||
$rename | ||||
$set | ||||
$setOnInsert | ||||
$unset | ||||
Matrisuppdateringsoperatorer | $ | |||
$[] | ||||
$[identifier] | ||||
$addToSet | ||||
$pop | ||||
$pull | ||||
$push | ||||
$pullAll | ||||
$each | ||||
$position | ||||
$slice | ||||
$sort | ||||
Bitvis uppdateringsoperatorer | $bit | |||
Aritmetiska uttrycksoperatorer | $abs | |||
$add | ||||
$ceil | ||||
$divide | ||||
$exp | ||||
$floor | ||||
$ln | ||||
$log | ||||
$log10 | ||||
$mod | ||||
$multiply | ||||
$pow | ||||
$round | ||||
$sqrt | ||||
$subtract | ||||
$trunc | ||||
Operatorer för matrisuttryck | $arrayElemAt | |||
$arrayToObject | ||||
$concatArrays | ||||
$filter | ||||
$firstN | ||||
$in | ||||
$indexOfArray | ||||
$isArray | ||||
$lastN | ||||
$map | ||||
$maxN | ||||
$minN | ||||
$objectToArray | ||||
$range | ||||
$reduce | ||||
$reverseArray | ||||
$size | ||||
$slice | ||||
$sortArray | ||||
$zip | ||||
Bitvis operatorer | $bitAnd | |||
$bitNot | ||||
$bitOr | ||||
$bitXor | ||||
Booleska uttrycksoperatorer | $and | |||
$not | ||||
$or | ||||
Operatorer för jämförelseuttryck | $cmp | |||
$eq | ||||
$gt | ||||
$gte | ||||
$lt | ||||
$lte | ||||
$ne | ||||
Operatorer för anpassade sammansättningsuttryck | Stöds inte ännu. | |||
Datastorleksoperatorer | $bsonSize | |||
$binarySize | ||||
Datumuttrycksoperatorer | $dateAdd | |||
$dateDiff | ||||
$dateFromParts | ||||
$dateFromString | ||||
$dateSubtract | ||||
$dateToParts | ||||
$dateToString | ||||
$dateTrunc | ||||
$dayOfMonth | ||||
$dayOfWeek | ||||
$dayOfYear | ||||
$hour | ||||
$isoDayOfWeek | ||||
$isoWeek | ||||
$isoWeekYear | ||||
$millisecond | ||||
$minute | ||||
$month | ||||
$second | ||||
$toDate | ||||
$week | ||||
$year | ||||
Operator för literaluttryck | $literal | |||
Diverse operatorer | $getField | |||
$rand | ||||
$sampleRate | ||||
Objektuttrycksoperatorer | $mergeObjects | |||
$objectToArray | ||||
$setField | ||||
Ange uttrycksoperatorer | $allElementsTrue | |||
$anyElementTrue | ||||
$setDifference | ||||
$setEquals | ||||
$setIntersection | ||||
$setIsSubset | ||||
$setUnion | ||||
Operatorer för stränguttryck | $concat | |||
$dateFromString | ||||
$dateToString | ||||
$indexOfBytes | ||||
$indexOfCP | ||||
$ltrim | ||||
$regexFind | ||||
$regexFindAll | ||||
$regexMatch | ||||
$replaceOne | ||||
$replaceAll | ||||
$rtrim | ||||
$split | ||||
$strLenBytes | ||||
$strLenCP | ||||
$strcasecmp | ||||
$substr | ||||
$substrBytes | ||||
$substrCP | ||||
$toLower | ||||
$toString | ||||
$trim | ||||
$toUpper | ||||
Textuttrycksoperator | $meta | |||
Tidsstämpeluttrycksoperatorer | $tsIncrement | |||
$tsSecond | ||||
Operatorer för trigonometriuttryck | $sin | |||
$cos | ||||
$tan | ||||
$asin | ||||
$acos | ||||
$atan | ||||
$atan2 | ||||
$asinh | ||||
$acosh | ||||
$atanh | ||||
$sinh | ||||
$cosh | ||||
$tanh | ||||
$degreesToRadians | ||||
$radiansToDegrees | ||||
Typuttrycksoperatorer | $convert | |||
$isNumber | ||||
$toBool | ||||
$toDate | ||||
$toDecimal | ||||
$toDouble | ||||
$toInt | ||||
$toLong | ||||
$toObjectId | ||||
$toString | ||||
$type | ||||
Ackumulatorer ($group, $bucket, $bucketAuto, $setWindowFields) | $accumulator | |||
$addToSet | ||||
$avg | ||||
$bottom | ||||
$bottomN | ||||
$count | ||||
$first | ||||
$firstN | ||||
$last | ||||
$lastN | ||||
$max | ||||
$maxN | ||||
$median | ||||
$mergeObjects | ||||
$min | ||||
$percentile | ||||
$push | ||||
$stdDevPop | ||||
$stdDevSamp | ||||
$sum | ||||
$top | ||||
$topN | ||||
Ackumulatorer (i andra steg) | $avg | |||
$first | ||||
$last | ||||
$max | ||||
$median | ||||
$min | ||||
$percentile | ||||
$stdDevPop | ||||
$stdDevSamp | ||||
$sum | ||||
Operatorer för variabeluttryck | $let | |||
Fönsteroperatorer | $sum | |||
$push | ||||
$addToSet | ||||
$count | ||||
$max | ||||
$min | ||||
$avg | ||||
$stdDevPop | ||||
$bottom | ||||
$bottomN | ||||
$covariancePop | ||||
$covarianceSamp | ||||
$denseRank | ||||
$derivative | ||||
$documentNumber | ||||
$expMovingAvg | ||||
$first | ||||
$integral | ||||
$last | ||||
$linearFill | ||||
$locf | ||||
$minN | ||||
$rank | ||||
$shift | ||||
$stdDevSamp | ||||
$top | ||||
$topN | ||||
Operatorer för villkorsuttryck | $cond | |||
$ifNull | ||||
$switch | ||||
Faser för sammansättningspipeline | $addFields | |||
$bucket | ||||
$bucketAuto | ||||
$changeStream | ||||
$changeStreamSplitLargeEvent | ||||
$collStats | ||||
$count | ||||
$densify | ||||
$documents | ||||
$facet | ||||
$fill | ||||
$geoNear | ||||
$graphLookup | ||||
$group | ||||
$indexStats | ||||
$limit | ||||
$listSampledQueries | ||||
$listSearchIndexes | ||||
$listSessions | ||||
$lookup | ||||
$match | ||||
$merge | ||||
$out | ||||
$planCacheStats | ||||
$project | ||||
$redact | ||||
$replaceRoot | ||||
$replaceWith | ||||
$sample | ||||
$search | ||||
$searchMeta | ||||
$set | ||||
$setWindowFields | ||||
$skip | ||||
$sort | ||||
$sortByCount | ||||
$unionWith | ||||
$unset | ||||
$unwind | ||||
$shardedDataDistribution | ||||
$changeStream | ||||
$currentOp | ||||
$listLocalSessions | ||||
$documents | ||||
Variabler i sammansättningsuttryck | NU | |||
ROOT | ||||
REMOVE | ||||
CURRENT | ||||
CLUSTER_TIME | ||||
DESCEND | ||||
PRUNE | ||||
KEEP | ||||
SEARCH_META | ||||
USER_ROLES |
Index och indexegenskaper
Azure Cosmos DB for MongoDB vCore stöder följande index och indexegenskaper:
Kommentar
När du skapar ett unikt index får du ett exklusivt lås på samlingen under hela byggprocessen. Detta blockerar läs- och skrivåtgärder i samlingen tills åtgärden har slutförts.
Index
Command | Stöds |
Index för enstaka fält | |
Sammansatt index | |
Multikey-index | |
Textindex | |
Jokerteckenindex | |
Geospatialt index | |
Hash-index | |
Vektorindex (endast tillgängligt i Cosmos DB) | Ja, med vektorsökning |
Indexegenskaper
Command | Stöds |
TTL | |
Unik | |
Delvis | |
Skiftlägesokänsligt | |
Utspridda | |
Bakgrund |