Sdílet prostřednictvím


Kompatibilita a podpora funkcí MongoDB s využitím virtuálních jader Azure Cosmos DB pro MongoDB

PLATÍ PRO: Virtuální jádro MongoDB

Virtuální jádro Služby Azure Cosmos DB pro MongoDB umožňuje využívat známé výhody MongoDB a zároveň přistupovat k vylepšeným podnikovým funkcím nabízeným službou Azure Cosmos DB. Zajišťuje kompatibilitu pomocí přenosového protokolu MongoDB a umožňuje využívat stávající klientské ovladače, sady SDK a další nástroje, které už znáte.

Podpora protokolu

Tady jsou uvedené podporované operátory a všechna omezení nebo výjimky. Každý klientský ovladač, který těmto protokolům rozumí, by měl být schopný se připojit ke službě Azure Cosmos DB for MongoDB. Při vytváření clusterů virtuálních jader Azure Cosmos DB pro MongoDB je koncový bod ve formátu *.mongocluster.cosmos.azure.com.

Podpora dotazovacího jazyka

Azure Cosmos DB pro MongoDB poskytuje komplexní podporu konstruktorů dotazovacího jazyka MongoDB. Níže najdete podrobný seznam aktuálně podporovaných databázových příkazů, operátorů, fází a možností.

Poznámka:

Tento článek obsahuje pouze podporované příkazy serveru a vyloučí funkce obálky na straně klienta. Funkce obálky na straně klienta, jako deleteMany() jsou a updateMany() interně využívají delete() příkazy a update() příkazy serveru. Funkce využívající podporované příkazy serveru jsou kompatibilní se službou Azure Cosmos DB pro MongoDB.

Databázové příkazy

Azure Cosmos DB pro virtuální jádro MongoDB podporuje následující databázové příkazy:

KategoriePříkazFunkce
v5.0v6.0v7.0
Příkazy agregaceagregátníAnoAnoAno
countAnoAnoAno
distinctAnoAnoYes
mapReduceZastaralé v MongoDB 5.0
Příkazy pro ověřováníauthenticateAnoAnoYes
getnonceZastaralé v MongoDB 4.0
logoutZastaralé v MongoDB 5.0
Geoprostorové příkazygeoSearchZastaralé v MongoDB 5.0
Příkazy mezipaměti plánu dotazůNoNoNe
Příkazy pro správucloneCollectionAsCappedNoNe, omezené kolekce se v současné době nepodporují.
collModAnoAnoAno
compactNoNoNe
convertToCappedNoNe. Omezené kolekce se v současné době nepodporují.
createAnoAnoAno
createIndexesAnoAnoAno
currentOpAnoAnoAno
dropAnoAnoAno
dropDatabaseAnoAnoYes
dropConnectionsJako služba PaaS to bude spravovat Azure.
dropIndexesAnoAnoAno
filemd5NoNoNe
fsyncJako služba PaaS to bude spravovat Azure.
fsyncUnlockJako služba PaaS to bude spravovat Azure.
getDefaultRWConcernAnoAnoAno
getClusterParameterNoNo
getParameterAnoAnoAno
killCursorsAnoAnoAno
killOpAnoAnoAno
listCollectionsAnoAnoAno
listDatabasesAnoAnoAno
listIndexesAnoAnoYes
logRotateJako služba PaaS to bude spravovat Azure.
reIndexAnoAnoAno
renameCollectionAnoAnoYes
rotateCertificatesJako služba PaaS to bude spravovat Azure.
setFeatureCompatibilityVersionJako služba PaaS to bude spravovat Azure.
setIndexCommitQuorumNoNoNo
setParameterAnoAnoAno
setDefaultRWConcernNoNoNe
shutdownJako služba PaaS to bude spravovat Azure.
Příkazy pro správu rolí a uživatelůDnes se nepodporuje, ale v budoucnu bude k dispozici prostřednictvím Azure Active Directory.
Příkazy replikaceAzure spravuje replikaci a odstraňuje nutnost, aby se zákazníci mohli replikovat ručně.
Příkazy horizontálního děleníenableShardingAnoAnoAno
isdbgridAnoAnoAno
reshardCollectionAnoAnoAno
shardCollectionAnoAnoYes
unsetShardingZastaralé v MongoDB 5.0
addShardJako nabídka PaaS (Platforma jako služba) spravuje Azure správu horizontálních oddílů a vyrovnávání. Uživatelé musí zadat pouze strategii horizontálního dělení pro kolekce a Azure bude zpracovávat zbytek.
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
Příkazy operací dotazování a zápisuchange streamsNoNoNo
deleteAnoAnoAno
findAnoAnoAno
findAndModifyAnoAnoYes
getLastErrorZastaralé v MongoDB 5.1
getMoreAnoAnoAno
insertAnoAnoYes
resetErrorZastaralé v MongoDB 5.0
updateAnoAnoYes
Příkazy relaceabortTransactionAnoAnoAno
commitTransactionAnoAnoAno
endSessionsAnoAnoAno
killAllSessionsNoNoNo
killAllSessionsByPatternNoNoNo
killSessionsAnoAnoAno
refreshSessionsNoNoNo
startSessionAnoAnoYes
Diagnostické příkazyavailableQueryOptionsNoNoNo
buildInfoAnoAnoAno
collStatsAnoAnoAno
connPoolStatsNoNoNo
connectionStatusAnoAnoAno
dataSizeNoNoNo
dbHashNoNoNo
dbStatsAnoAnoYes
driverOIDTestJako služba PaaS to bude spravovat Azure.
explainAnoAnoYes
featuresJako služba PaaS to bude spravovat Azure.
getCmdLineOptsAnoAnoAno
getLogAnoAnoAno
hostInfoAnoAnoAno
_isSelfNoNoNo
listCommandsAnoAnoAno
lockInfoNoNoNo
netstatNoNoNo
pingAnoAnoYes
profileJako služba PaaS to bude spravovat Azure.
serverStatusNoNoNe
shardConnPoolStatsZastaralé v MongoDB 5.0
topNoNoNo
validateAnoAnoAno
whatsmyuriAnoAnoYes
Příkazy auditování systémových událostílogApplicationMessageNoNoNe

Operátory

Níže je seznam operátorů aktuálně podporovaných ve službě Azure Cosmos DB pro virtuální jádro MongoDB:

Poznámka:

Agregace $lookup zatím nepodporuje použití proměnných výrazů pomocí 'let'. AvgObjsize a velikost v "collStats" a "dbStats" funguje pouze s velikostí dokumentu menší než 2 kB.

KategoriePříkazFunkce
v5.0v6.0v7.0
Operátory dotazu porovnání$eqAnoAnoAno
$gtAnoAnoAno
$gteAnoAnoAno
$inAnoAnoAno
$ltAnoAnoAno
$lteAnoAnoAno
$neAnoAnoAno
$ninAnoAnoYes
Logické operátory dotazů$andAnoAnoAno
$notAnoAnoAno
$norAnoAnoAno
$orAnoAnoYes
Operátory dotazu elementu$existsAnoAnoAno
$typeAnoAnoYes
Operátory dotazů pro vyhodnocení$exprAnoAnoAno
$jsonSchemaNoNoNo
$modAnoAnoAno
$regexAnoAnoAno
$textAnoAnoAno
$whereNoNoNe
Geoprostorové operátory$geoIntersectsAnoVe verzi Preview*
$geoWithin
$box
$center
$centerSphere
$geometry
$maxDistance
$minDistance
$polygon
$near
$nearSphere
Operátory maticových dotazů$allAnoAnoAno
$elemMatchAnoAnoAno
$sizeAnoAnoYes
Bitové operátory dotazů$bitsAllClearAnoAnoAno
$bitsAllSetAnoAnoAno
$bitsAnyClearAnoAnoAno
$bitsAnySetAnoAnoYes
Operátory projekce$AnoAnoAno
$elemMatchAnoAnoAno
$metaAnoAnoAno
$sliceAnoAnoYes
Různé operátory dotazů$commentNoNoNo
$randAnoAnoAno
$naturalNoNoNe
Operátory aktualizace polí$currentDateAnoAnoAno
$incAnoAnoAno
$minAnoAnoAno
$maxAnoAnoAno
$mulAnoAnoAno
$renameAnoAnoAno
$setAnoAnoAno
$setOnInsertAnoAnoAno
$unsetAnoAnoYes
Operátory aktualizace pole$AnoAnoAno
$[]AnoAnoAno
$[identifier]AnoAnoAno
$addToSetAnoAnoAno
$popAnoAnoAno
$pullAnoAnoAno
$pushAnoAnoAno
$pullAllAnoAnoAno
$eachAnoAnoAno
$positionAnoAnoAno
$sliceAnoAnoAno
$sortAnoAnoYes
Bitové aktualizační operátory$bitAnoAnoYes
Aritmetické operátory výrazů$absAnoAnoAno
$addAnoAnoAno
$ceilAnoAnoAno
$divideAnoAnoAno
$expAnoAnoAno
$floorAnoAnoAno
$lnAnoAnoAno
$logAnoAnoAno
$log10AnoAnoAno
$modAnoAnoAno
$multiplyAnoAnoAno
$powAnoAnoAno
$roundAnoAnoAno
$sqrtAnoAnoAno
$subtractAnoAnoAno
$truncAnoAnoYes
Operátory výrazů pole$arrayElemAtAnoAnoAno
$arrayToObjectAnoAnoAno
$concatArraysAnoAnoAno
$filterAnoAnoAno
$firstNAnoAnoAno
$inAnoAnoAno
$indexOfArrayAnoAnoAno
$isArrayAnoAnoAno
$lastNAnoAnoAno
$mapAnoAnoAno
$maxNAnoAno
$minNAnoAno
$objectToArrayAnoAnoAno
$rangeAnoAnoAno
$reduceAnoAnoAno
$reverseArrayAnoAnoAno
$sizeAnoAnoAno
$sliceAnoAnoAno
$sortArrayAnoAno
$zipAnoAnoYes
Bitové operátory$bitAndAnoAnoAno
$bitNotAnoAnoAno
$bitOrAnoAnoAno
$bitXorAnoAnoYes
Logické operátory výrazů$andAnoAnoAno
$notAnoAnoAno
$orAnoAnoYes
Operátory relačních výrazů$cmpAnoAnoAno
$eqAnoAnoAno
$gtAnoAnoAno
$gteAnoAnoAno
$ltAnoAnoAno
$lteAnoAnoAno
$neAnoAnoYes
Vlastní operátory agregačních výrazůZatím není podporováno.
Operátory velikosti dat$bsonSizeAnoAnoAno
$binarySizeAnoAnoYes
Operátory výrazů data$dateAddAnoAnoAno
$dateDiffAnoAnoAno
$dateFromPartsAnoAnoAno
$dateFromStringAnoAnoAno
$dateSubtractAnoAnoAno
$dateToPartsAnoAnoAno
$dateToStringAnoAnoAno
$dateTruncAnoAnoAno
$dayOfMonthAnoAnoAno
$dayOfWeekAnoAnoAno
$dayOfYearAnoAnoAno
$hourAnoAnoAno
$isoDayOfWeekAnoAnoAno
$isoWeekAnoAnoAno
$isoWeekYearAnoAnoAno
$millisecondAnoAnoAno
$minuteAnoAnoAno
$monthAnoAnoAno
$secondAnoAnoAno
$toDateAnoAnoAno
$weekAnoAnoAno
$yearAnoAnoYes
Operátor literálových výrazů$literalAnoAnoYes
Různé operátory$getFieldNoNoNo
$randAnoAnoAno
$sampleRateNoNoNe
Operátory výrazů objektů$mergeObjectsAnoAnoAno
$objectToArrayAnoAnoAno
$setFieldAnoAnoYes
Set Expression Operators$allElementsTrueAnoAnoAno
$anyElementTrueAnoAnoAno
$setDifferenceAnoAnoAno
$setEqualsAnoAnoAno
$setIntersectionAnoAnoAno
$setIsSubsetAnoAnoAno
$setUnionAnoAnoYes
Řetězcové operátory výrazů$concatAnoAnoAno
$dateFromStringNoNoNo
$dateToStringAnoAnoAno
$indexOfBytesAnoAnoAno
$indexOfCPAnoAnoAno
$ltrimAnoAnoAno
$regexFindAnoAnoAno
$regexFindAllAnoAnoAno
$regexMatchAnoAnoAno
$replaceOneAnoAnoAno
$replaceAllAnoAnoAno
$rtrimAnoAnoAno
$splitAnoAnoAno
$strLenBytesAnoAnoAno
$strLenCPAnoAnoAno
$strcasecmpAnoAnoAno
$substrAnoAnoAno
$substrBytesAnoAnoAno
$substrCPAnoAnoAno
$toLowerAnoAnoAno
$toStringAnoAnoAno
$trimAnoAnoAno
$toUpperAnoAnoYes
Operátor textového výrazu$metaAnoAnoYes
Operátory časového razítka$tsIncrementAnoAnoAno
$tsSecondAnoAnoYes
Operátory trigonometrie výrazůZatím není podporováno.
Operátory výrazů typu$convertAnoAnoAno
$isNumberAnoAnoAno
$toBoolAnoAnoAno
$toDateAnoAnoAno
$toDecimalAnoAnoAno
$toDoubleAnoAnoAno
$toIntAnoAnoAno
$toLongAnoAnoAno
$toObjectIdAnoAnoAno
$toStringAnoAnoAno
$typeAnoAnoYes
Akumulátory ($group, $bucket, $bucketAuto, $setWindowFields)$accumulatorNoNoNo
$addToSetAnoAnoAno
$avgAnoAnoAno
$bottomNoNo
$bottomNNoNo
$countAnoAnoAno
$firstAnoAnoAno
$firstNAnoAnoAno
$lastAnoAnoAno
$lastNAnoAnoAno
$maxAnoAnoAno
$maxNNoNo
$medianNoNoNo
$mergeObjectsAnoAnoAno
$minAnoAnoAno
$percentileNoNoNo
$pushAnoAnoAno
$stdDevPopNoNoNo
$stdDevSampNoNoNo
$sumAnoAnoAno
$topNoNo
$topNNoNe
Akumulátory (v jiných fázích)$avgNoNoNo
$firstAnoAnoAno
$lastAnoAnoAno
$maxNoNoNo
$medianNoNoNo
$minNoNoNo
$percentileNoNoNo
$stdDevPopNoNoNo
$stdDevSampNoNoNo
$sumNoNoNe
Operátory výrazů proměnnýchZatím není podporováno.
Operátory okenZatím není podporováno.
Operátory podmíněného výrazu$condAnoAnoAno
$ifNullAnoAnoAno
$switchAnoAnoYes
Fáze kanálu agregace$addFieldsAnoAnoAno
$bucketNoNoNo
$bucketAutoNoNoNo
$changeStreamNoNoNo
$changeStreamSplitLargeEventNoNoNo
$collStatsAnoAnoAno
$countAnoAnoAno
$densifyNoNo
$documentsNoNo
$facetAnoAnoAno
$fillNoNo
$geoNearAnoAnoAno
$graphLookupAnoAnoAno
$groupAnoAnoAno
$indexStatsAnoAnoAno
$limitAnoAnoAno
$listSampledQueriesNoNoNo
$listSearchIndexesNoNoNo
$listSessionsNoNoNo
$lookupAnoAnoAno
$matchAnoAnoAno
$mergeNoNoNo
$outNoNoNo
$planCacheStatsNoNoNo
$projectAnoAnoAno
$redactNoNoNo
$replaceRootAnoAnoAno
$replaceWithAnoAnoAno
$sampleAnoAnoAno
$searchAnoAnoAno
$searchMetaAnoAnoAno
$setAnoAnoAno
$setWindowFieldsNoNoNo
$skipAnoAnoAno
$sortAnoAnoAno
$sortByCountAnoAnoAno
$unionWithNoNoNo
$unsetAnoAnoAno
$unwindAnoAnoAno
$shardedDataDistributionNoNoNo
$changeStreamNoNoNo
$currentOpAnoAnoAno
$listLocalSessionsNoNoNo
$documentsNoNoČíslo
Proměnné ve výrazech agregaceTEĎNoNoNo
ROOTAnoAnoAno
REMOVEAnoAnoAno
CURRENTAnoAnoAno
CLUSTER_TIMENoNoNo
DESCENDNoNoNo
PRUNENoNoNo
KEEPNoNoNo
SEARCH_METANoNoNo
USER_ROLESNoNoNe

Indexy a vlastnosti indexu

Azure Cosmos DB pro virtuální jádro MongoDB podporuje následující indexy a vlastnosti indexu:

Poznámka:

Vytvoření jedinečného indexu získá výhradní zámek kolekce po celou dobu trvání procesu sestavení. Tím se zablokuje operace čtení a zápisu v kolekci, dokud se operace nedokončí.

Indexy

PříkazPodporováno
Index s jedním polemAno
Složený indexAno
Index s více klíčiAno
Textový indexAno
Index zástupných znakůAno
Geoprostorový indexAnoVe verzi Preview*
Index s hodnotou hashAno
Vector Index (k dispozici pouze ve službě Cosmos DB)AnoAno, s vektorovým vyhledáváním

Vlastnosti indexu

PříkazPodporováno
TTLAno
JedinečnýAno
ČástečnáAno
Nerozlišující velká a malá písmenaNo
ŘídkéAno
PozadíAno

Další kroky