包含了等值测试、排序及范围过滤查询的索引建立方法:
1. 等值测试
在索引中加入所有需要做等值测试的字段,任意顺序。
2. 排序字段(多排序字段的升/降序问题 )
根据查询的顺序有序的向索引中添加字段。
3. 范围过滤
以字段的基数(Collection中字段的不同值的数量)从低到高的向索引中添加范围过滤字段。
当然这里还有一个规则:如果索引中的等值或者范围查询字段不能过滤出Collection中90%以上的文档,那么把它移除索引估计会更好一些。并且如果你在一个Collection上有多个索引,那么必须hint Mongos。
详细内容可以查阅参考资料1.
参考资料:
1. http://www.csdn.net/article/2012-11-09/2811690-optimizing-mongodb-compound