文档菜单
文档首页
/
MongoDB 手册
/ /

分片集群中的操作限制

本页内容

  • 分片操作限制

$where 不允许从 $where 函数引用 db 对象。这在非分片集合中很少见。

在分片环境中不支持 geoSearch 命令。

在 MongoDB 5.0 及更早版本中,您不能在 分片集合from 参数中指定 $lookup 阶段。

要使用updateOne()deleteOne()操作对一个指定了multi: falsejustOne选项的分片集合

  • 如果只针对一个分片,可以在查询规范中使用部分分片键,或者

  • 在查询规范中提供分片键_id字段。

要使用findOneAndUpdate()与分片集合,查询过滤器必须包含对分片键的相等条件,以比较以下任一格式中的键和值

{ key: value }
{ key: { $eq: value } }

MongoDB不支持跨分片的全局唯一索引,除非唯一索引包含作为索引前缀的完整分片键。在这些情况下,MongoDB将强制在整个键上执行唯一性,而不是单个字段。

提示

参见

任意字段的唯一约束以获取另一种方法。

MongoDB不能保证跨分片的一致性索引。在执行addShard操作或块迁移期间创建的索引可能无法传播到新的分片。

要检查分片集群的一致性索引,请使用checkMetadataConsistency命令

db.runCommand( {
checkMetadataConsistency: 1,
checkIndexes: true
} )

返回

区域范围重叠

本页内容