MongoDB查询优化与常见模式解析
1. 慢查询分析
在MongoDB中,使用其分析器可以轻松找出慢查询,但要发现这些查询变慢的原因则更具挑战性,可能需要一些排查工作。慢查询的原因多种多样,最简单的情况是缺少索引、索引不合适或查询不理想。我们可以通过对有问题的查询运行 explain 来确定具体原因。
1.1 使用和理解 explain()
MongoDB的 explain 命令能提供给定查询路径的详细信息。例如,对之前运行的最后一个查询使用 explain :
db.values.find({}).sort({close: -1}).limit(1).explain()
输出结果如下:
{
"cursor" : "BasicCursor",
"isMultiKey" : false,
"n" : 1,
"nscannedObjects" : 4308303,
"nscanned" : 4308303,
"nscannedObjectsAllPlans" : 4308303,
"nscannedAllPlans" : 4308303,
"scanAndOrder" : true,
"indexOnly" : false,
"nYields" : 4,
"nChunkSkips" : 0,
"mi
超级会员免费看
订阅专栏 解锁全文
888

被折叠的 条评论
为什么被折叠?



