怎么理解mongodb执行计划

73次阅读
没有评论

共计 1746 个字符,预计需要花费 5 分钟才能阅读完成。

本篇内容介绍了“怎么理解 mongodb 执行计划”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让丸趣 TV 小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

====Mongodb 并发批量 kill session =============

并发、批量 kill session

1、将查询时间超过 1000s 的所有 session kill 掉

db.currentOp().inprog.forEach(function(item){if(item.secs_running 1000 item.op == query)db.killOp(item.opid)})

2、将所有包含集合 jack.bear 查询 kill 掉

db.currentOp().inprog.forEach(function(item){if(item.ns == jack.bear item.op == query)db.killOp(item.opid)})

3、将满足 item.op== query item.secs_running 60 item.ns== jack.bear 这 3 个条件的操作 kill 掉

db.currentOp().inprog.forEach(function(item){if(item.waitingForLock){var lock_info = item[ opid if(item.op== query item.secs_running 60 item.ns== cswuyg.cswuyg){db.killOp(item.opid)}}})

4、将满足 item.op == query item.secs_running 1000 这 2 个条件的操作 kill 掉

db.currentOp().inprog.forEach(function(item) {

 var lock_info = item[opid

 if (item.op == query item.secs_running 1000) {

  print(kill , item.opid);

  db.killOp(item.opid)

 }

})

################# MongoDB 执行计划 ################

Stage 分类

COLLSCAN:扫描整个集合 IXSCAN:索引扫描 FETCH:根据索引去检索选择 document

SHARD_MERGE:将各个分片返回数据进行 merge

SORT:表明在内存中进行了排序(与老版本的 scanAndOrder:true 一致)

LIMIT:使用 limit 限制返回数

SKIP:使用 skip 进行跳过 IDHACK:针对_id 进行查

SHARDING_FILTER:通过 mongos 对分片数据进行查询

COUNT:利用 db.coll.explain().count() 之类进行 count

COUNTSCAN:count 不使用用 Index 进行 count 时的 stage 返回

COUNT_SCAN:count 使用了 Index 进行 count 时的 stage 返回 SUBPLA:未使用到索引的 $or 查询的 stage 返回

TEXT:使用全文索引进行查询时候的 stage 返回 PROJECTION:限定返回字段时候 stage 的返回

========= 重建索引 =======

重建索引:

db.tableName.dropIndex(indexName)

db.tableName.ensureIndex({key1 : 1 , key2 :1},{name : indexName},{background:true})

db.COLLECTION_NAME.ensureIndex({uuid :-1},{background:true})

db.COLLECTION_NAME.getIndexes()

== 查看执行计划 ===

db.collection_name.find({}).explain(true)

find{} 里面要设置具体的查询条件,才可以查到精确的执行计划

MongoDB 查看执行计划时,最理想状态:–20180604

“怎么理解 mongodb 执行计划”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注丸趣 TV 网站,丸趣 TV 小编将为大家输出更多高质量的实用文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-20发表,共计1746字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)