共用方式為


Azure Cosmos DB for MongoDB 虛擬核心提供 MongoDB 相容性和功能支援

適用於: MongoDB 虛擬核心

Azure Cosmos DB for MongoDB 虛擬核心為您帶來熟悉的 MongoDB 優勢,同時讓您存取 Azure Cosmos DB 增強企業功能。 Azure Cosmos DB for MongoDB 遵循 MongoDB 有線通訊協定,確保相容性,並讓您有效率的調控現有用戶端驅動程式、SDK 和您已熟悉的其他工具。

通訊協定支援

以下列出支援的運算子及任何限制或例外狀況。 任何了解這些通訊協定的用戶端驅動程式,都應能與 Azure Cosmos DB for MongoDB 連線。 建立 Azure Cosmos DB for MongoDB 虛擬核心叢集時,端點的格式是 *.mongocluster.cosmos.azure.com

查詢語言支援

Azure Cosmos DB for MongoDB 為 MongoDB 查詢語言建構提供全面支援。 您可以在下方找到目前支援的資料庫命令、運算子、階段和選項的詳細清單。

注意

本文只列出支援的伺服器命令,不包括用戶端包裝函式。 deleteMany()updateMany() 等用戶端包裝函式會在內部利用 delete()update() 伺服器命令。 利用支援伺服器命令的函式與 Azure Cosmos DB for MongoDB 相容。

資料庫命令

Azure Cosmos DB for MongoDB 虛擬核心支援以下資料庫命令:

類別命令功能
v5.0v6.0v7.0
彙總命令彙總Yes.是.是
count.是.是.是
distinct.是.是Yes
mapReduceMongoDB 5.0 中已被取代
驗證命令authenticateYes.是.是
getnonce.是.是.是
logout.是.是Yes
地理空間命令geoSearchMongoDB 5.0 中已被取代
查詢計劃快取命令No無No
管理命令cloneCollectionAsCappedNo否,目前不支援上限集合。
collMod.是.是.是
compact無無No
convertToCappedNo否。 目前不支援上限集合。
create.是.是.是
createIndexes.是.是.是
currentOp.是.是.是
drop.是.是.是
dropDatabase.是.是Yes
dropConnections這是 PaaS 服務的一部分,將由 Azure 管理。
dropIndexesYes.是.是
filemd5無無No
fsync這是 PaaS 服務的一部分,將由 Azure 管理。
fsyncUnlock這是 PaaS 服務的一部分,將由 Azure 管理。
getDefaultRWConcernYes.是.是
getClusterParameter無無
getParameter.是.是.是
killCursors.是.是.是
killOp.是.是.是
listCollections.是.是.是
listDatabases.是.是.是
listIndexes.是.是Yes
logRotate這是 PaaS 服務的一部分,將由 Azure 管理。
reIndexYes.是.是
renameCollection.是.是Yes
rotateCertificates這是 PaaS 服務的一部分,將由 Azure 管理。
setFeatureCompatibilityVersion這是 PaaS 服務的一部分,將由 Azure 管理。
setIndexCommitQuorumNo無無
setParameter.是.是.是
setDefaultRWConcern無無No
shutdown這是 PaaS 服務的一部分,將由 Azure 管理。
使用者和角色管理命令目前尚不支持,但將來會透過 Azure Active Directory 提供。
複寫命令Azure 管理複寫,客戶不需手動複寫。
分區化命令enableShardingYes.是.是
isdbgrid.是.是.是
reshardCollection.是.是.是
shardCollection.是.是Yes
unsetShardingMongoDB 5.0 中已被取代
addShard這是平台即服務 (PaaS) 供應項目的一部分,將由 Azure 管理分區管理和重新平衡。 使用者只需指定集合的​​分區策略,後續問題由 Azure 處理。
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
查詢和寫入作業命令change streamsNo無無
delete.是.是.是
find.是.是.是
findAndModify.是.是.是
getLastError.是.是.是
getMore.是.是.是
insert.是.是Yes
resetErrorMongoDB 5.0 中已被取代
updateYes.是Yes
工作階段命令abortTransactionYes.是.是
commitTransaction.是.是.是
endSessions.是.是.是
killAllSessions無無無
killAllSessionsByPattern無無無
killSessions.是.是.是
refreshSessions無無無
startSession.是.是Yes
診斷命令availableQueryOptionsNo無無
buildInfo.是.是.是
collStats.是.是.是
connPoolStats無無無
connectionStatus.是.是.是
dataSize無無無
dbHash無無無
dbStats.是.是Yes
driverOIDTest這是 PaaS 服務的一部分,將由 Azure 管理。
explainYes.是Yes
features這是 PaaS 服務的一部分,將由 Azure 管理。
getCmdLineOptsYes.是.是
getLog.是.是.是
hostInfo.是.是.是
_isSelf無無無
listCommands.是.是.是
lockInfo無無無
netstat無無無
ping.是.是Yes
profile這是 PaaS 服務的一部分,將由 Azure 管理。
serverStatusYes.是Yes
shardConnPoolStatsMongoDB 5.0 中已被取代
topNo無無
validate.是.是.是
whatsmyuri.是.是Yes
系統事件稽核命令logApplicationMessageNo無No

操作員

以下是 Azure Cosmos DB for MongoDB 虛擬核心目前支援的運算子的清單:

注意

$lookup 彙總尚不支援使用「let」的變數運算式。 「collStats」和「dbStats」中的 AvgObjsize 和大小只適用於小於 2KB 的文件大小。

類別命令功能
v5.0v6.0v7.0
比較查詢運算子$eqYes.是.是
$gt.是.是.是
$gte.是.是.是
$in.是.是.是
$lt.是.是.是
$lte.是.是.是
$ne.是.是.是
$nin.是.是Yes
邏輯查詢運算子$andYes.是.是
$not.是.是.是
$nor.是.是.是
$or.是.是Yes
元素查詢運算子$existsYes.是.是
$type.是.是Yes
評估查詢運算子$exprYes.是.是
$jsonSchema無無無
$mod.是.是.是
$regex.是.是.是
$text.是.是.是
$where無無No
地理空間運算子$geoIntersectsYes處於預覽狀態*
$geoWithin
$box
$center
$centerSphere
$geometry
$maxDistance
$minDistance
$polygon
$near
$nearSphere
陣列查詢運算子$allYes.是.是
$elemMatch.是.是.是
$size.是.是Yes
位元查詢運算子$bitsAllClearYes.是.是
$bitsAllSet.是.是.是
$bitsAnyClear.是.是.是
$bitsAnySet.是.是Yes
投影運算子$Yes.是.是
$elemMatch.是.是.是
$meta.是.是.是
$slice.是.是Yes
其他查詢運算子$commentNo無無
$rand.是.是.是
$natural無無No
欄位更新運算子$currentDateYes.是.是
$inc.是.是.是
$min.是.是.是
$max.是.是.是
$mul.是.是.是
$rename.是.是.是
$set.是.是.是
$setOnInsert.是.是.是
$unset.是.是Yes
陣列更新運算子$Yes.是.是
$[].是.是.是
$[identifier].是.是.是
$addToSet.是.是.是
$pop.是.是.是
$pull.是.是.是
$push.是.是.是
$pullAll.是.是.是
$each.是.是.是
$position.是.是.是
$slice.是.是.是
$sort.是.是Yes
位元更新運算子$bitYes.是Yes
算術運算式運算子$absYes.是.是
$add.是.是.是
$ceil.是.是.是
$divide.是.是.是
$exp.是.是.是
$floor.是.是.是
$ln.是.是.是
$log.是.是.是
$log10.是.是.是
$mod.是.是.是
$multiply.是.是.是
$pow.是.是.是
$round.是.是.是
$sqrt.是.是.是
$subtract.是.是.是
$trunc.是.是Yes
陣列運算式運算子$arrayElemAtYes.是.是
$arrayToObject.是.是.是
$concatArrays.是.是.是
$filter.是.是.是
$firstN.是.是.是
$in.是.是.是
$indexOfArray.是.是.是
$isArray.是.是.是
$lastN.是.是.是
$map.是.是.是
$maxN無無
$minN無無
$objectToArray.是.是.是
$range.是.是.是
$reduce.是.是.是
$reverseArray.是.是.是
$size.是.是.是
$slice.是.是.是
$sortArray無無
$zip無無No
位元運算子$bitAndYes.是.是
$bitNot.是.是.是
$bitOr.是.是.是
$bitXor.是.是Yes
布林值運算式運算子$andYes.是.是
$not.是.是.是
$or.是.是Yes
比較運算式運算子$cmpYes.是.是
$eq.是.是.是
$gt.是.是.是
$gte.是.是.是
$lt.是.是.是
$lte.是.是.是
$ne.是.是Yes
自訂彙總運算式運算子尚不支援。
資料大小運算子$bsonSizeYes.是.是
$binarySize.是.是Yes
資料運算式運算子$dateAddYes.是.是
$dateDiff.是.是.是
$dateFromParts.是.是.是
$dateFromString.是.是.是
$dateSubtract.是.是.是
$dateToParts.是.是.是
$dateToString.是.是.是
$dateTrunc.是.是.是
$dayOfMonth.是.是.是
$dayOfWeek.是.是.是
$dayOfYear.是.是.是
$hour.是.是.是
$isoDayOfWeek.是.是.是
$isoWeek.是.是.是
$isoWeekYear.是.是.是
$millisecond.是.是.是
$minute.是.是.是
$month.是.是.是
$second.是.是.是
$toDate.是.是.是
$week.是.是.是
$year.是.是Yes
常值運算式運算子$literalYes.是Yes
雜項運算子$getFieldNo無無
$rand.是.是.是
$sampleRate無無No
物件運算式運算子$mergeObjectsYes.是.是
$objectToArray.是.是.是
$setField.是.是Yes
集合運算式運算子$allElementsTrueYes.是.是
$anyElementTrue.是.是.是
$setDifference.是.是.是
$setEquals.是.是.是
$setIntersection.是.是.是
$setIsSubset.是.是.是
$setUnion.是.是Yes
字串運算式運算子$concatYes.是.是
$dateFromString無無無
$dateToString.是.是.是
$indexOfBytes.是.是.是
$indexOfCP.是.是.是
$ltrim.是.是.是
$regexFind.是.是.是
$regexFindAll.是.是.是
$regexMatch.是.是.是
$replaceOne.是.是.是
$replaceAll.是.是.是
$rtrim.是.是.是
$split.是.是.是
$strLenBytes.是.是.是
$strLenCP.是.是.是
$strcasecmp.是.是.是
$substr.是.是.是
$substrBytes.是.是.是
$substrCP.是.是.是
$toLower.是.是.是
$toString.是.是.是
$trim.是.是.是
$toUpper.是.是Yes
文字運算式運算子$metaYes.是Yes
時間戳記運算式運算子$tsIncrementYes.是.是
$tsSecond.是.是Yes
三角運算式運算子尚不支援。
類型運算式運算子$convertYes.是.是
$isNumber.是.是.是
$toBool.是.是.是
$toDate.是.是.是
$toDecimal.是.是.是
$toDouble.是.是.是
$toInt.是.是.是
$toLong.是.是.是
$toObjectId.是.是.是
$toString.是.是.是
$type.是.是Yes
累加器($group、$bucket、$bucketAuto、$setWindowFields)$accumulatorNo無無
$addToSet.是.是.是
$avg.是.是.是
$bottom無無
$bottomN無無
$count.是.是.是
$first.是.是.是
$firstN.是.是.是
$last.是.是.是
$lastN.是.是.是
$max.是.是.是
$maxN無無
$median無無無
$mergeObjects.是.是.是
$min.是.是.是
$percentile無無無
$push.是.是.是
$stdDevPop無無無
$stdDevSamp無無無
$sum.是.是.是
$top無無
$topN無No
累加器(在其他階段中)$avgNo無無
$first.是.是.是
$last.是.是.是
$max無無無
$median無無無
$min無無無
$percentile無無無
$stdDevPop無無無
$stdDevSamp無無無
$sum無無No
變數運算式運算子尚不支援。
視窗運算子尚不支援。
條件運算式運算子$condYes.是.是
$ifNull.是.是.是
$switch.是.是Yes
彙總管線階段$addFieldsYes.是.是
$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無無無
彙總運算式中的變數立即No無無
ROOT.是.是.是
REMOVE.是.是.是
CURRENT.是.是.是
CLUSTER_TIME無無無
DESCEND無無無
PRUNE無無無
KEEP無無無
SEARCH_META無無無
USER_ROLES無無No

索引和索引屬性

Azure Cosmos DB for MongoDB 虛擬核心支援以下索引和索引屬性:

注意

建立唯一索引會在整個組建流程中取得集合的獨佔鎖定。 這會阻擋對集合的讀取和寫入作業,直到作業完成。

索引數

Command支援
單一欄位索引Yes
複合索引Yes
多重索引鍵索引Yes
文字索引Yes
萬用字元索引Yes
地理空間索引Yes處於預覽狀態*
雜湊索引Yes
向量索引(只在 Cosmos DB 中可用)Yes是,使用向量搜尋

索引屬性

Command支援
TTLYes
唯一Yes
PartialYes
不區分大小寫No
疏鬆Yes
背景Yes

下一步