mongodb聚合查询优化_MongoDB如何查询耗时记录的方法详解

本文介绍了MongoDB中记录查询耗时的方法,包括使用explain方法分析find查询的executionTimeMills,以及通过Profiling功能记录聚合查询等操作的耗时。通过调整Profiling级别和设置slowms阈值,可以监控和优化查询性能。同时,文章强调了当docsExamined远大于nreturned时应考虑添加索引,以及优化responseLength来提升查询效率。
摘要由CSDN通过智能技术生成

准备

在此之前,我们先在我们的数据库中插入10万条数据。数据的格式是这样的:

{

"name":"your name",

"age":22,

"gender":"male",

"grade":2

}

explain

explain方法是用来查看db.collecion.find()的一些查询信息的。例如:

db.collectionName.find().explain()

explain方法有个可选的参数verbose,是个字符串,他表示的是verbose的模式。一共分为3种模式:

queryPlanner:默认参数,详细说明查询优化器选择的计划并列出被拒绝的计划。例如:

db.students.find({grade:1}).explain()

executionStats:MongoDB运行查询优化器选择获胜的计划,执行计划,完成并返回成功,统计描述的胜利计划的执行。例如:

db.students.find({grade:1}).explain("executionStats")

allPlansExecution:MongoDB返回描述获奖计划的执行以及对其他候选人统计计划选择方案时捕获的统计。

我们的目的是要记录执行find方法的耗时时间,所以用executio

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值