我是分片的新手,我想问问是否可以使用将与$ nin查询一起使用的分片键对集合进行分片。
例如,假设我有收藏集:
{
_id: ObjectId(...),
firstName: "John",
lastName: "Chalaris",
role: "Manager",
....
}
如果我的分片键是角色,是否可以有效地运行查询:
db.users.find(role: {$nin: ["Manager, Support"]})
Shard Key在群集中分布数据中起重要作用。为提高效率,查询中指定分片键作为筛选条件的一部分也很重要。
分片键值和与之关联的块确定查询必须访问多少个分片。因此,为了提高性能,查询应将分片键作为目标操作(并避免分散收集或广播)操作的部分筛选条件。 mongos
确定要定位的碎片。