mongodb - 多个分片键是否有助于提高 mongodb 的性能?

标签 mongodb sharding

由于分片数据库使用分片键来拆分块和路由查询,所以我认为更多的分片键可能有助于使更多的查询更有针对性

我试过像这样指定多个键

db.runCommand( { shardcollection : "test.users" , key : {_id:1, email : 1 ,address:1}

但我不知道它是否有效以及这样做的缺点是什么

最佳答案

这里要明确一点,你只能有一个分片键。所以你不能有多个分片键

但是,您建议使用 compound index作为片键。这是可以做到的,但有一些限制。

例如_idemailaddress的组合必须是唯一的。

choosing a shard key 的文档.还有几个我不能在这里列出的注意事项。请参阅该文档。

关于mongodb - 多个分片键是否有助于提高 mongodb 的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5648466/

相关文章:

templates - Logstash模板不适合增加分片数量

java - 每个 http 请求的直接数据库连接与连接池 - 有什么区别

mongodb - 为什么 MongoDb 分片中 Collection 的文档数量在减少

javascript - 使用 mongodb 将 ZMQ 套接字与 Express app.js 分离

java - spring data mongodb版本与spring的兼容性

mongodb - 在 MongoDB 中执行 compact 时究竟阻塞了什么?

mongodb - 是否可以从 mongodb 中的数组创建分片键?

python - 更新嵌入式 Mongo 文档 - Mongoengine

node.js - Mongodb updateone 与 $set 和 $currentDate 在第二次更新后抛出错误代码 40

javascript - 错误 : Cannot read property 'close' of null