Optimization Tips | Tip #28: OR-queries should match as much as possible as soon as possible

OR查询完全和AND相反,试着先放多包含的,MongoDB不得不每次匹配时检查是否包含数据集的一部分在文档中.

如果我们按照顺序像AND查询一样,我们不得不为每个子句检查一下文档.

Optimization Tips | Tip #28: OR-queries should match as much as possible as soon as possible_第1张图片

Figure 3-7 这个矩形是个集合,色彩较暗的是集合的一部分必须每次进行搜索的,首先搜索C,迫使我们在每次后来的查询中进行大规模的查询.


如果改为下面这样,我们尽可能多的匹配集合.


Optimization Tips | Tip #28: OR-queries should match as much as possible as soon as possible_第2张图片


先查询大数据集,这样我们就限制了以后的查询空间!


原版书 <<50 Tips and Tricks for MongoDB Developers>>   地址:http://oreilly.com/catalog/0636920019893

皮皮书屋下载地址http://www.ppurl.com/2011/05/50-tips-and-tricks-for-mongodb-developers.html

本书的所有翻译地址: http://blog.csdn.net/crazyjixiang/article/category/858638

翻译目的MongoDB资料国内很少,书就更不必说了,借助对MongoDB的理解为大家做点贡献,如果有翻译有误的地方请指正,不能误入子弟,谢谢!

译者:Crazybaby 







原文链接: http://blog.csdn.net/crazyjixiang/article/details/6690270

你可能感兴趣的:(Optimization Tips | Tip #28: OR-queries should match as much as possible as soon as possible)