支持的 MongoDB API、操作和数据类型
Amazon DocumentDB(与 MongoDB 兼容) 是一个快速、可扩展、高度可用且完全托管的文档数据库服务,它支持 MongoDB 工作负载。Amazon DocumentDB 与 MongoDB 3.6 API 兼容。本部分列出了支持的功能。有关 Amazon DocumentDB 和 MongoDB 之间的功能差异,请参阅功能差异:Amazon DocumentDB和 MongoDB.
仅供内部使用或不适用于完全托管的服务的 MongoDB 命令和运算符不受支持,并且未包含在支持的功能列表中。
自发布以来,我们已添加 50 多种附加功能,并将继续向客户学习以提供他们所需的功能。有关最近发布的信息,请参阅 Amazon DocumentDB 公告.
如果您希望我们构建某个不受支持的功能,请向 服务团队Amazon DocumentDB发送一封包含您的 accountID、请求的功能和使用案例的电子邮件来告知我们此情况。
数据库命令
管理命令
命令 | 3.6 | 4.0 |
---|---|---|
受限集合 | 否 | 否 |
cloneCollectionAsCapped | 否 | 否 |
collMod | 部分 | 部分 |
collMod: expireAfterSeconds | 是 | 是 |
convertToCapped | 否 | 否 |
copydb | 否 | 否 |
create | 是 | 是 |
createView | 否 | 否 |
createIndexes | 是 | 是 |
currentOp | 是 | 是 |
drop | 是 | 是 |
dropDatabase | 是 | 是 |
dropIndexes | 是 | 是 |
filemd5 | 否 | 否 |
killCursors | 是 | 是 |
killOp | 是 | 是 |
listCollections | 是 | 是 |
listDatabases | 是 | 是 |
listIndexes | 是 | 是 |
reIndex | 否 | 否 |
renameCollection | 否 | 否 |
Aggregation
命令 | 3.6 | 4.0 |
---|---|---|
aggregate | 是 | 是 |
count | 是 | 是 |
区分 | 是 | 是 |
mapReduce | 否 | 否 |
Authentication
命令 | 3.6 | 4.0 |
---|---|---|
authenticate | 是 | 是 |
logout | 是 | 是 |
诊断命令
命令 | 3.6 | 4.0 |
---|---|---|
buildInfo | 是 | 是 |
collStats | 是 | 是 |
connPoolStats | 否 | 否 |
connectionStatus | 是 | 是 |
dataSize | 是 | 是 |
dbHash | 否 | 否 |
dbStats | 是 | 是 |
explain | 是 | 是 |
Explain:executionStats | 是 | 是 |
features | 否 | 否 |
hostInfo | 是 | 是 |
listCommands | 是 | 是 |
profiler | ||
serverStatus | 是 | 是 |
top | 是 | 是 |
查询和写入操作
命令 | 3.6 | 4.0 |
---|---|---|
delete | 是 | 是 |
find | 是 | 是 |
findAndModify | 是 | 是 |
getLastError | 否 | 否 |
getMore | 是 | 是 |
getPrevError | 否 | 否 |
insert | 是 | 是 |
parallelCollectionScan | 否 | 否 |
resetError | 否 | 否 |
update | 是 | 是 |
Change streams | ||
GridFS | 否 |
角色管理命令
命令 | 3.6 | 4.0 |
---|---|---|
createRole | 否 | 否 |
dropRole | 否 | 否 |
dropAllRolesFromDatabase | 否 | 否 |
grantRolesToRole | 否 | 否 |
revokePrivilegesFromRole | 否 | 否 |
revokeRolesFromRole | 否 | 否 |
updateRole | 否 | 否 |
rolesInfo | 否 | 否 |
会话命令
命令 | 3.6 | 4.0 |
---|---|---|
abortTransaction | 否 | 是 |
提交事务 | 否 | 是 |
endSessions | 否 | 是 |
终止所有会话 | 否 | 是 |
终止所有会话(按模式) | 否 | 否 |
终止会话 | 否 | 是 |
refreshSessions | 否 | 否 |
startSession | 否 | 是 |
用户管理
命令 | 3.6 | 4.0 |
---|---|---|
createUser | 是 | 是 |
dropAllUsersFromDatabase | 是 | 是 |
dropUser | 是 | 是 |
grantRolesToUser | 是 | 是 |
revokeRolesFromUser | 是 | 是 |
updateUser | 是 | 是 |
userInfo | 是 | 是 |
查询和投影运算符
数组运算符
命令 | 3.6 | 4.0 |
---|---|---|
$all | 是 | 是 |
$elemMatch | 是 | 是 |
$size | 是 | 是 |
按位运算符
命令 | 3.6 | 4.0 |
---|---|---|
$bitsAllSet | 是 | 是 |
$bitsAnySet | 是 | 是 |
$bitsAllClear | 是 | 是 |
$bitsAnyClear | 是 | 是 |
Comment 运算符
命令 | 3.6 | 4.0 |
---|---|---|
$comment | 是 | 是 |
比较运算符
命令 | 3.6 | 4.0 |
---|---|---|
$eq | 是 | 是 |
$gt | 是 | 是 |
$gte | 是 | 是 |
$lt | 是 | 是 |
$lte | 是 | 是 |
$ne | 是 | 是 |
$in | 是 | 是 |
$nin | 是 | 是 |
元素运算符
命令 | 3.6 | 4.0 |
---|---|---|
$exists | 是 | 是 |
$type | 是 | 是 |
评估查询运算符
命令 | 3.6 | 4.0 |
---|---|---|
$expr | 否 | 否 |
$jsonSchema | 否 | 否 |
$mod | 是 | 是 |
$regex | 是 | 是 |
$text | 否 | 否 |
$where | 否 | 否 |
逻辑运算符
命令 | 3.6 | 4.0 |
---|---|---|
$or | 是 | 是 |
$and | 是 | 是 |
$not | 是 | 是 |
$nor | 是 | 是 |
投影运算符
命令 | 3.6 | 4.0 |
---|---|---|
$ | 是 | 是 |
$elemMatch | 是 | 是 |
$meta | 否 | 否 |
$slice | 是 | 是 |
更新运算符
数组运算符
命令 | 3.6 | 4.0 |
---|---|---|
$ | 是 | 是 |
$[] | 是 | 是 |
$[<identifier>] | 是 | 是 |
$addToSet | 是 | 是 |
$pop | 是 | 是 |
$pullAll | 是 | 是 |
$pull | 是 | 是 |
$push | 是 | 是 |
按位运算符
命令 | 3.6 | 4.0 |
---|---|---|
$bit | 是 | 是 |
字段运算符
运算符 | 3.6 | 4.0 |
---|---|---|
$inc | 是 | 是 |
$mul | 是 | 是 |
$rename | 是 | 是 |
$setOnInsert | 是 | 是 |
$set | 是 | 是 |
$unset | 是 | 是 |
$min | 是 | 是 |
$max | 是 | 是 |
$currentDate | 是 | 是 |
更新修饰符
运算符 | 3.6 | 4.0 |
---|---|---|
$each | 是 | 是 |
$slice | 是 | 是 |
$sort | 是 | 是 |
$position | 是 | 是 |
Geospatial
几何体说明符
查询选择器 | 3.6 | 4.0 |
---|---|---|
$箱 | 否 | 否 |
$中心 | 否 | 否 |
$中心球体 | 否 | 否 |
$nearSphere | 否 | 否 |
$几何体 | 否 | 否 |
$maxDistance | 否 | 否 |
$最小实例 | 否 | 否 |
$多边形 | 否 | 否 |
$ UniqueDocs | 否 | 否 |
查询选择器
命令 | 3.6 | 4.0 |
---|---|---|
$地理节 | 否 | 否 |
$地理线 ($geoWithin) | 否 | 否 |
美元最近 | 否 | 否 |
$nearSphere | 否 | 否 |
$多边形 | 否 | 否 |
$ UniqueDocs | 否 | 否 |
游标方法
命令 | 3.6 | 4.0 |
---|---|---|
cursor.batchSize() | 是 | 是 |
cursor.close() | 是 | 是 |
cursor.isClosed() | 是 | 是 |
cursor.collation() | 否 | 否 |
cursor.comment() | 是 | 是 |
cursor.count() | 是 | 是 |
cursor.explain() | 是 | 是 |
cursor.forEach() | 是 | 是 |
cursor.hasNext() | 是 | 是 |
cursor.hint() | 是 | 是 |
cursor.isExhausted() | 是 | 是 |
cursor.itcount() | 是 | 是 |
cursor.limit() | 是 | 是 |
cursor.map() | 是 | 是 |
cursor.maxScan() | 是 | 是 |
cursor.maxTimeMS() | 是 | 是 |
cursor.max() | 否 | 否 |
cursor.min() | 否 | 否 |
cursor.next() | 是 | 是 |
cursor.noCursorTimeout() | 否 | 否 |
cursor.objsLeftInBatch() | 是 | 是 |
cursor.pretty() | 是 | 是 |
cursor.readConcern() | 是 | 是 |
cursor.readPref() | 是 | 是 |
cursor.returnKey() | 否 | 否 |
cursor.showRecordId() | 否 | 否 |
cursor.size() | 是 | 是 |
cursor.skip() | 是 | 是 |
cursor.sort() | 是 | 是 |
cursor.tailable() | 否 | 否 |
cursor.toArray() | 是 | 是 |
聚合管道运算符
累加器表达式
表达式 | 3.6 | 4.0 |
---|---|---|
$sum | 是 | 是 |
$avg | 是 | 是 |
$first | 是 | 是 |
$last | 是 | 是 |
$max | 是 | 是 |
$min | 是 | 是 |
$push | 是 | 是 |
$addToSet | 是 | 是 |
$stdDevPop | 否 | 否 |
$stdDevSamp | 否 | 否 |
算术运算符
命令 | 3.6 | 4.0 |
---|---|---|
$abs | 是 | 是 |
$add | 是 | 是 |
$ceil | 否 | 否 |
$divide | 是 | 是 |
$exp | 否 | 否 |
$floor | 否 | 否 |
$ln | 否 | 否 |
$log | 否 | 否 |
$log10 | 否 | 否 |
$mod | 是 | 是 |
$multiply | 是 | 是 |
$pow | 否 | 否 |
$sqrt | 否 | 否 |
$subtract | 是 | 是 |
$trunc | 否 | 否 |
数组运算符
命令 | 3.6 | 4.0 |
---|---|---|
$arrayElemAt | 是 | 是 |
$arrayToObject | 是 | 是 |
$concatArrays | 是 | 是 |
$filter | 是 | 是 |
$indexOfArray | 否 | 否 |
$isArray | 是 | 是 |
$objectToArray | 是 | 是 |
$range | 是 | 是 |
$reverseArray | 否 | 否 |
$reduce | 否 | 否 |
$size | 是 | 是 |
$slice | 是 | 是 |
$zip | 否 | 否 |
$in | 是 | 是 |
布尔运算符
命令 | 3.6 | 4.0 |
---|---|---|
$and | 是 | 是 |
$or | 是 | 是 |
$not | 是 | 是 |
比较运算符
命令 | 3.6 | 4.0 |
---|---|---|
$cmp | 是 | 是 |
$eq | 是 | 是 |
$gt | 是 | 是 |
$gte | 是 | 是 |
$lt | 是 | 是 |
$lte | 是 | 是 |
$ne | 是 | 是 |
条件表达式运算符
命令 | 3.6 | 4.0 |
---|---|---|
$cond | 是 | 是 |
$ifNull | 是 | 是 |
$switch | 否 | 否 |
数据类型运算符
命令 | 3.6 | 4.0 |
---|---|---|
$type | 否 | 否 |
日期运算符
命令 | 3.6 | 4.0 |
---|---|---|
$dayOfYear | 是 | 是 |
$dayOfMonth | 是 | 是 |
$dayOfWeek | 是 | 是 |
$year | 是 | 是 |
$month | 是 | 是 |
$week | 是 | 是 |
$hour | 是 | 是 |
$minute | 是 | 是 |
$second | 是 | 是 |
$millisecond | 是 | 是 |
$dateToString | 是 | 是 |
$isoDayOfWeek | 是 | 是 |
$isoWeek | 是 | 是 |
$dateFromParts | 否 | 否 |
$dateToParts | 否 | 否 |
$dateFromString | 是 | 是 |
$isoWeekYear | 是 | 是 |
文字运算符
命令 | 3.6 | 4.0 |
---|---|---|
$literal | 否 | 否 |
合并运算符
命令 | 3.6 | 4.0 |
---|---|---|
$mergeObjects | 否 | 否 |
自然运算符
命令 | 3.6 | 4.0 |
---|---|---|
$自然 | 否 | 否 |
集合运算符
命令 | 3.6 | 4.0 |
---|---|---|
$setEquals | 是 | 是 |
$setIntersection | 是 | 是 |
$setUnion | 是 | 是 |
$setDifference | 否 | 否 |
$setIsSubset | 是 | 是 |
$anyElementTrue | 否 | 否 |
$allElementsTrue | 否 | 否 |
阶段运算符
命令 | 3.6 | 4.0 |
---|---|---|
$collStats | 否 | 否 |
$project | 是 | 是 |
$match | 是 | 是 |
$redact | 是 | 是 |
$limit | 是 | 是 |
$skip | 是 | 是 |
$unwind | 是 | 是 |
$group | 是 | 是 |
$sample | 是 | 是 |
$sort | 是 | 是 |
$geoNear | 否 | 否 |
$lookup | 是 | 是 |
$out | 是 | 是 |
$indexStats | 是 | 是 |
$facet | 否 | 否 |
$bucket | 否 | 否 |
$bucketAuto | 否 | 否 |
$sortByCount | 否 | 否 |
$addFields | 是 | 否 |
$replaceRoot | 是 | 是 |
$count | 是 | 是 |
$currentOp | 是 | 是 |
$listLocalSessions | 否 | 否 |
$listSessions | 否 | 否 |
$graphLookup | 否 | 否 |
字符串运算符
命令 | 3.6 | 4.0 |
---|---|---|
$concat | 是 | 是 |
$indexOfBytes | 是 | 是 |
$indexOfCP | 是 | 是 |
克拉里 | 否 | 否 |
$符 | 否 | 否 |
$split | 是 | 是 |
$strcasecmp | 是 | 是 |
$strLenBytes | 是 | 是 |
$strLenCP | 是 | 是 |
$substr | 是 | 是 |
$substrBytes | 是 | 是 |
$substrCP | 是 | 是 |
$toLower | 是 | 是 |
$toUpper | 是 | 是 |
$要 | 否 | 否 |
系统变量
命令 | 3.6 | 4.0 |
---|---|---|
$$CURRENT | 否 | 否 |
$$DESCEND | 是 | 是 |
$$KEEP | 是 | 是 |
$$PRUNE | 是 | 是 |
$$REMOVE | 否 | 否 |
$$ROOT | 否 | 否 |
文本搜索运算符
命令 | 3.6 | 4.0 |
---|---|---|
$meta | 否 | 否 |
类型转换运算符
命令 | 3.6 | 4.0 |
---|---|---|
$转换 | 否 | 否 |
$到布尔值 | 否 | 否 |
设为 $toDate | 否 | 否 |
$到十进制 | 否 | 否 |
$toDouble | 否 | 否 |
$到整数 | 否 | 否 |
$到长整型 | 否 | 否 |
$到对象 ID | 否 | 否 |
$到字符串 | 否 | 否 |
变量运算符
命令 | 3.6 | 4.0 |
---|---|---|
$map | 否 | 否 |
$let | 否 | 否 |
数据类型
命令 | 3.6 | 4.0 |
---|---|---|
Double | 是 | 是 |
字符串 | 是 | 是 |
Object | 是 | 是 |
数组 | 是 | 是 |
二进制数据 | 是 | 是 |
ObjectId | 是 | 是 |
Boolean | 是 | 是 |
日期 | 是 | 是 |
Null | 是 | 是 |
位整数 (int) | 是 | 是 |
时间戳 | 是 | 是 |
64 位 整数 (长整型) | 是 | 是 |
MinKey | 是 | 是 |
MaxKey | 是 | 是 |
Decimal128 | 否 | 否 |
常规 表达式 | 否 | 否 |
JavaScript | 否 | 否 |
JavaScript (带 范围) | 否 | 否 |
未定义 | 否 | 否 |
符号 | 否 | 否 |
DBPointer | 否 |
索引和索引属性
Indexes
命令 | 3.6 | 4.0 |
---|---|---|
单个字段索引 | 是 | 是 |
复合索引 | 是 | 是 |
多键索引 | 是 | 是 |
文本索引 | 否 | 否 |
2dsphere | 否 | 否 |
2d 索引 | 否 | 否 |
哈希索引 | 否 | 否 |
索引属性
命令 | 3.6 | 4.0 |
---|---|---|
TTL | 是 | 是 |
唯一 | 是 | 是 |
部分 | 否 | 否 |
区分大小写 | 否 | 否 |
稀疏 | 是 | 是 |
背景 | 是 | 是 |