怎么理解mongodb執(zhí)行計劃-創(chuàng)新互聯(lián)

本篇內(nèi)容介紹了“怎么理解mongodb執(zhí)行計劃”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

10年積累的網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有攸縣免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

====Mongodb 并發(fā)批量kill session =============

并發(fā)、批量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 執(zhí)行計劃################

Stage 分類

COLLSCAN:掃描整個集合 IXSCAN:索引掃描 FETCH:根據(jù)索引去檢索選擇document

SHARD_MERGE:將各個分片返回數(shù)據(jù)進行merge

SORT:表明在內(nèi)存中進行了排序(與老版本的scanAndOrder:true一致)

LIMIT:使用limit限制返回數(shù)

SKIP:使用skip進行跳過 IDHACK:針對_id進行查

SHARDING_FILTER:通過mongos對分片數(shù)據(jù)進行查詢

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()

==查看執(zhí)行計劃===

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

find{} 里面要設(shè)置具體的查詢條件,才可以查到精確的執(zhí)行計劃

MongoDB 查看執(zhí)行計劃時,最理想狀態(tài):--20180604

“怎么理解mongodb執(zhí)行計劃”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

文章標題:怎么理解mongodb執(zhí)行計劃-創(chuàng)新互聯(lián)
文章鏈接:http://bm7419.com/article0/dgdjio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、用戶體驗定制網(wǎng)站、電子商務(wù)網(wǎng)站設(shè)計公司、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司