다음을 통해 공유


MongoDB vCore용 Azure Cosmos DB와의 MongoDB 호환성 및 기능 지원

적용 대상: MongoDB vCore

Azure Cosmos DB for MongoDB vCore를 사용하면 Azure Cosmos DB에서 제공하는 향상된 엔터프라이즈 기능에 액세스하면서 친숙한 MongoDB 이점을 경험할 수 있습니다. MongoDB 유선 프로토콜을 따라 호환성을 보장하므로 이미 익숙한 기존 클라이언트 드라이버, SDK 및 기타 도구를 적용할 수 있습니다.

프로토콜 지원

지원되는 연산자 및 제한 사항이나 예외는 다음과 같습니다. 이러한 프로토콜을 인식하는 모든 클라이언트 드라이버는 Azure Cosmos DB for MongoDB에 연결할 수 있습니다. Azure Cosmos DB for MongoDB vCore 클러스터를 만들 때 엔드포인트는 형식 *.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.0 v6.0 v7.0
관리 명령cloneCollectionAsCapped 예 아니요. 제한된(Capped) 컬렉션은 현재 지원되지 않습니다.
collMod 예 예 예
compact 아니요 아니요 아니요
convertToCapped 예 아니요 제한된(Capped) 컬렉션은 현재 지원되지 않습니다.
create 예 예 예
createIndexes 예 예 예
currentOp 예 예 예
drop 예 예 예
dropDatabase 예 예 예
dropConnectionsPaaS 서비스로 Azure에서 관리됩니다.
dropIndexes 예 예 예
filemd5 아니요 아니요 아니요
fsyncPaaS 서비스로 Azure에서 관리됩니다.
fsyncUnlockPaaS 서비스로 Azure에서 관리됩니다.
getDefaultRWConcern 예 예 예
getClusterParameter 아니요 아니요
getParameter 예 예 예
killCursors 예 예 예
killOp 예 예 예
listCollections 예 예 예
listDatabases 예 예 예
listIndexes 예 예 예
logRotatePaaS 서비스로 Azure에서 관리됩니다.
reIndex 예 예 예
renameCollection 예 예 예
rotateCertificatesPaaS 서비스로 Azure에서 관리됩니다.
setFeatureCompatibilityVersionPaaS 서비스로 Azure에서 관리됩니다.
setIndexCommitQuorum 아니요 아니요 아니요
setParameter 예 예 예
setDefaultRWConcern 아니요 아니요 아니요
validateDBMetadata 아니요 아니요 아니요
shutdownPaaS 서비스로 Azure에서 관리됩니다.
compactStructuredEncryptionDataPaaS 서비스로 Azure에서 관리됩니다.
setUserWriteBlockModePaaS 서비스로 Azure에서 관리됩니다.
집계 명령 집계 예 예 예
count 예 예 예
distinct 예 예 예
mapReduceMongoDB 5.0에서 사용되지 않음
인증 명령authenticate 예 예 예
logoutMongoDB 5.0에서 사용되지 않음
진단 명령buildInfo 예 예 예
collStats 예 예 예
connPoolStats 아니요 아니요 아니요
connectionStatus 예 예 예
dataSize 아니요 아니요 아니요
dbHash 아니요 아니요 아니요
dbStats 예 예 예
explain 예 예 예
getCmdLineOpts 예 예 예
getLog 예 예 예
hello 예 예 예
hostInfo 예 예 예
listCommands 예 예 예
lockInfo 아니요 아니요 아니요
ping 예 예 예
profilePaaS 서비스로 Azure에서 관리됩니다.
serverStatus 아니요 아니요 아니요
shardConnPoolStatsMongoDB 5.0에서 사용되지 않습니다. 대안: connPoolStats
top 아니요 아니요 아니요
validate 예 예 예
whatsmyuri 예 예 예
지리 공간적 명령geoSearchMongoDB 5.0에서 사용되지 않음
쿼리 및 쓰기 작업 명령bulkWrite 아니요 아니요 아니요
delete 예 예 예
find 예 예 예
findAndModify 예 예 예
getLastErrorMongoDB 5.1에서 사용되지 않음
getMore 예 예 예
insert 예 예 예
resetErrorMongoDB 5.0에서 사용되지 않음
update 예 예 예
쿼리 계획 캐시 명령PaaS 서비스로 Azure에서 관리됩니다.
복제 명령Azure가 복제를 관리하므로 고객이 수동으로 복제할 필요가 없습니다.
역할 관리 명령현재는 지원되지 않지만 나중에 Azure Active Directory를 통해 사용할 수 있습니다.
세션 명령abortTransaction 예 예 예
commitTransaction 예 예 예
endSessions 예 예 예
killAllSessions 아니요 아니요 아니요
killAllSessionsByPattern 아니요 아니요 아니요
killSessions 예 예 예
refreshSessions 아니요 아니요 아니요
startSession 예 예 예
분할 명령enableSharding 예 예 예
isdbgrid 예 예 예
reshardCollection 예 예 예
shardCollection 예 예 예
unsetShardingMongoDB 5.0에서 사용되지 않음
addShardPaaS(Platform-as-a-Service) 제품인 Azure는 분할된 데이터베이스 관리 및 리밸런싱을 관리합니다. 사용자가 컬렉션에 대한 분할 전략만 지정하면 Azure가 나머지를 처리합니다.
addShardToZone
clearJumboFlag
abortUnshardCollection
removeShard
removeShardFromZone
setShardVersion
mergeChunks
abortMoveCollection
getShardMap
analyzeShardKey
medianKey
checkMetadataConsistency
shardingState
cleanupReshardCollection
flushRouterConfig
balancerCollectionStatus
balancerStart
balancerStatus
balancerStop
configureCollectionBalancing
listShards
split
moveChunk
updateZoneKeyRange
movePrimary
moveRange
abortReshardCollection
commitReshardCollection
refineCollectionShardKey
configureQueryAnalyzer
transitionFromDedicatedConfigServer
transitionToDedicatedConfigServer
unshardCollection
시스템 이벤트 감사 명령logApplicationMessage 아니요 아니요 아니요
사용자 관리 명령createUser 예 예 예
dropUser 예 예 예
usersInfo 예 예 예
dropAllUsersFromDatabase현재는 지원되지 않지만 나중에 Azure Active Directory를 통해 사용할 수 있습니다.
grantRolesToUser
revokeRolesFromUser
updateUser

연산자

다음은 현재 Azure Cosmos DB for MongoDB vCore에서 지원되는 연산자 목록입니다.

참고 항목

"collStats" 및 "dbStats"의 AvgObjsize 및 크기는 문서 크기가 2KB 미만인 경우에만 작동합니다.

범주 명령 기능
v5.0 v6.0 v7.0
비교 쿼리 연산자$eq 예 예 예
$gt 예 예 예
$gte 예 예 예
$in 예 예 예
$lt 예 예 예
$lte 예 예 예
$ne 예 예 예
$nin 예 예 예
논리 쿼리 연산자$and 예 예 예
$not 예 예 예
$nor 예 예 예
$or 예 예 예
요소 쿼리 연산자$exists 예 예 예
$type 예 예 예
평가 쿼리 연산자$expr 예 예 예
$jsonSchema* 예 예 예
$mod 예 예 예
$regex 예 예 예
$text 예 예 예
$where 아니요 아니요 아니요
지리 공간적 연산자$geoIntersects 예 예 예
$geoWithin 예 예 예
$box 예 예 예
$center 예 예 예
$centerSphere 예 예 예
$geometry 예 예 예
$maxDistance 예 예 예
$minDistance 예 예 예
$polygon 예 예 예
$near 예 예 예
$nearSphere 예 예 예
배열 쿼리 연산자$all 예 예 예
$elemMatch 예 예 예
$size 예 예 예
비트 쿼리 연산자$bitsAllClear 예 예 예
$bitsAllSet 예 예 예
$bitsAnyClear 예 예 예
$bitsAnySet 예 예 예
프로젝션 연산자$ 예 예 예
$elemMatch 예 예 예
$meta 아니요 아니요 아니요
$slice 예 예 예
기타 쿼리 연산자$comment 예 예 예
$rand 예 예 예
$natural 예 예 예
필드 업데이트 연산자$currentDate 예 예 예
$inc 예 예 예
$min 예 예 예
$max 예 예 예
$mul 예 예 예
$rename 예 예 예
$set 예 예 예
$setOnInsert 예 예 예
$unset 예 예 예
배열 업데이트 연산자$ 예 예 예
$[] 예 예 예
$[identifier] 예 예 예
$addToSet 예 예 예
$pop 예 예 예
$pull 예 예 예
$push 예 예 예
$pullAll 예 예 예
$each 예 예 예
$position 예 예 예
$slice 예 예 예
$sort 예 예 예
비트 업데이트 연산자$bit 예 예 예
산술 식 연산자$abs 예 예 예
$add 예 예 예
$ceil 예 예 예
$divide 예 예 예
$exp 예 예 예
$floor 예 예 예
$ln 예 예 예
$log 예 예 예
$log10 예 예 예
$mod 예 예 예
$multiply 예 예 예
$pow 예 예 예
$round 예 예 예
$sqrt 예 예 예
$subtract 예 예 예
$trunc 예 예 예
배열 식 연산자$arrayElemAt 예 예 예
$arrayToObject 예 예 예
$concatArrays 예 예 예
$filter 예 예 예
$firstN 예 예 예
$in 예 예 예
$indexOfArray 예 예 예
$isArray 예 예 예
$lastN 예 예 예
$map 예 예 예
$maxN 예 예
$minN 예 예
$objectToArray 예 예 예
$range 예 예 예
$reduce 예 예 예
$reverseArray 예 예 예
$size 예 예 예
$slice 예 예 예
$sortArray 예 예
$zip 예 예 예
비트 연산자$bitAnd 예 예 예
$bitNot 예 예 예
$bitOr 예 예 예
$bitXor 예 예 예
부울 식 연산자$and 예 예 예
$not 예 예 예
$or 예 예 예
비교 식 연산자$cmp 예 예 예
$eq 예 예 예
$gt 예 예 예
$gte 예 예 예
$lt 예 예 예
$lte 예 예 예
$ne 예 예 예
사용자 지정 집계 식 연산자아직 지원되지 않습니다.
데이터 크기 연산자$bsonSize 예 예 예
$binarySize 예 예 예
데이터 식 연산자$dateAdd 예 예 예
$dateDiff 예 예 예
$dateFromParts 예 예 예
$dateFromString 예 예 예
$dateSubtract 예 예 예
$dateToParts 예 예 예
$dateToString 예 예 예
$dateTrunc 예 예 예
$dayOfMonth 예 예 예
$dayOfWeek 예 예 예
$dayOfYear 예 예 예
$hour 예 예 예
$isoDayOfWeek 예 예 예
$isoWeek 예 예 예
$isoWeekYear 예 예 예
$millisecond 예 예 예
$minute 예 예 예
$month 예 예 예
$second 예 예 예
$toDate 예 예 예
$week 예 예 예
$year 예 예 예
리터럴 식 연산자$literal 예 예 예
기타 연산자$getField 예 예 예
$rand 예 예 예
$sampleRate 예 예 예
개체 식 연산자$mergeObjects 예 예 예
$objectToArray 예 예 예
$setField 예 예 예
집합 식 연산자$allElementsTrue 예 예 예
$anyElementTrue 예 예 예
$setDifference 예 예 예
$setEquals 예 예 예
$setIntersection 예 예 예
$setIsSubset 예 예 예
$setUnion 예 예 예
문자열 식 연산자$concat 예 예 예
$dateFromString 예 예 예
$dateToString 예 예 예
$indexOfBytes 예 예 예
$indexOfCP 예 예 예
$ltrim 예 예 예
$regexFind 예 예 예
$regexFindAll 예 예 예
$regexMatch 예 예 예
$replaceOne 예 예 예
$replaceAll 예 예 예
$rtrim 예 예 예
$split 예 예 예
$strLenBytes 예 예 예
$strLenCP 예 예 예
$strcasecmp 예 예 예
$substr 예 예 예
$substrBytes 예 예 예
$substrCP 예 예 예
$toLower 예 예 예
$toString 예 예 예
$trim 예 예 예
$toUpper 예 예 예
텍스트 식 연산자$meta 아니요 아니요 아니요
타임스탬프 식 연산자$tsIncrement 예 예 예
$tsSecond 예 예 예
삼각 식 연산자$sin 예 예 예
$cos 예 예 예
$tan 예 예 예
$asin 예 예 예
$acos 예 예 예
$atan 예 예 예
$atan2 예 예 예
$asinh 예 예 예
$acosh 예 예 예
$atanh 예 예 예
$sinh 예 예 예
$cosh 예 예 예
$tanh 예 예 예
$degreesToRadians 예 예 예
$radiansToDegrees 예 예 예
유형 식 연산자$convert 예 예 예
$isNumber 예 예 예
$toBool 예 예 예
$toDate 예 예 예
$toDecimal 예 예 예
$toDouble 예 예 예
$toInt 예 예 예
$toLong 예 예 예
$toObjectId 예 예 예
$toString 예 예 예
$type 예 예 예
누산기($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 예 예
누산기(다른 단계)$avg 예 예 예
$first 예 예 예
$last 예 예 예
$max 예 예 예
$median 예 예 예
$min 예 예 예
$percentile 예 예 예
$stdDevPop 예 예 예
$stdDevSamp 예 예 예
$sum 예 예 예
변수 식 연산자$let 예 예 예
창 연산자$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 예 예 예
조건식 연산자$cond 예 예 예
$ifNull 예 예 예
$switch 예 예 예
집계 파이프라인 단계$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 아니요 아니요 아니요
$currentOp 예 예 예
$listLocalSessions 아니요 아니요 아니요
집계 식의 변수 지금 예 예 예
ROOT 예 예 예
REMOVE 예 예 예
CURRENT 예 예 예
CLUSTER_TIME 아니요 아니요 아니요
DESCEND 예 예 예
PRUNE 예 예 예
KEEP 예 예 예
SEARCH_META 아니요 아니요 아니요
USER_ROLES 아니요 아니요 아니요

참고 항목

*스키마 유효성 검사는 삽입, 업데이트, findAndModify 및 집계의 $merge/$out 단계를 지원합니다. bypassDocumentValidation을 사용하여 필요한 경우 유효성 검사를 건너뜁니다.

인덱스 및 인덱스 속성

Azure Cosmos DB for MongoDB vCore는 다음 인덱스 및 인덱스 속성을 지원합니다.

참고 항목

고유 인덱스를 만들면 빌드 프로세스의 전체 기간 동안 컬렉션에 대한 배타적 잠금이 생성됩니다. 이렇게 하면 작업이 완료될 때까지 컬렉션에 대한 읽기 및 쓰기 작업이 차단됩니다.

인덱스

명령지원됨
단일 필드 인덱스 예
복합 인덱스 예
Multikey 인덱스 예
텍스트 인덱스 예
와일드카드 인덱스 예
지리 공간적 인덱스 예
해시된 인덱스 예
벡터 인덱스(Cosmos DB에서만 사용 가능) 예 예, 벡터 검색 사용

인덱스 속성

명령지원됨
TTL (TTL) 예
고유 예
부분 예
대/소문자 구분 안 함 예
스파스 예
배경 예

다음 단계