我想知道我是应该选择更精确的分片键还是大于64MB的块。
以下是我的问题的详细说明:
我的收藏“帖子”包含属于“项目”的帖子(每个“帖子”文档包含projectId字段)。在查询条件下,我总是使用projectId = ...进行所有操作,所以第一眼看,最好的分片键是projectId。 我经常在查询条件中使用“createdDate”字段,但并非总是如此。
所以我创建了由projectId键分片的集合帖子。但我意识到,有些项目(占所有项目的5%)包含如此多的提及,具有相同projectId的所有文档的总大小将大于默认块大小(64MB)。
我应该选择更多specyfic分片键(例如复合键:projectId,createdDate)以避免比64MB更大的块或者我应该让块长度超过64MB吗?我想专注于快速阅读查询(尤其是聚合)。
答案 0 :(得分:0)
答案就在mongo google群组:https://groups.google.com/forum/#!topic/mongodb-user/EO1LO0Un_vA