我们有一个庞大的MongoDB收藏,6TB和增长很多。该集合用于用户和自动反馈,因此将用于各种分析。一个文档大约有20个字段。由于集合用于分析,过滤字段可以是任意组合,因此,为每个组合创建索引将太多。
对于这类(类似随机的)查询,是否有一个很好的索引集合?如果没有,是否有优化查询本身的方法?
如果这有助于优化,则会对查询进行分页。
示例查询:
db.usage.find({"appVersion": "4.0.0.0", "expression": "abcd"})其中appVersion没有索引。
发布于 2017-08-26 08:37:41
分析什么是“最常见”的查询,并为“十大”查询创建索引,其中仅包括两个第一列(键)。记住只为密钥对创建一个索引(如果您有键A和B,则只创建索引A、B而不是B、A)。并且在索引中只保留一个键作为“第一”键。(所以,如果你有A,B指数,你应该做A,C,把它变成C,A)。
在此之后,为那些在第一步没有创建的键创建“单键索引”。(所以键B的单键索引,因为它不是索引A、B或C、A中的“第一”键)
您可以使用德克斯来分析“缺失的索引”。
https://dba.stackexchange.com/questions/184352
复制相似问题