中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

【MongoDB學習筆記24】MongoDB的explain和hint函數

發布時間:2020-09-06 18:09:14 來源:網絡 閱讀:1741 作者:StanlyCheng 欄目:MongoDB數據庫

一、explain函數

explain函數可以提供大量查詢相關的信息,如果是慢查詢,它最重要的診斷工具。例如:

在有索引的字段上查詢:

> db.post.find({"loc.city":"ny"}).explain()   
{    
    "cursor" : "BtreeCursor loc.city_1",    
    "isMultiKey" : false,    
    "n" : 0,    
    "nscannedObjects" : 0,    
    "nscanned" : 0,    
    "nscannedObjectsAllPlans" : 0,    
    "nscannedAllPlans" : 0,    
    "scanAndOrder" : false,    
    "indexOnly" : false,    
    "nYields" : 0,    
    "nChunkSkips" : 0,    
    "millis" : 1,    
    "indexBounds" : {    
        "loc.city" : [    
            [    
                "ny",    
                "ny"    
            ]    
        ]    
    },    
    "server" : "localhost.localdomain:27017",    
    "filterSet" : false    
}    
>

在沒有索引的的字段上查詢:

> db.post.find({"name":"joe"}).explain()   
{    
    "cursor" : "BasicCursor",    
    "isMultiKey" : false,    
    "n" : 2,    
    "nscannedObjects" : 15,    
    "nscanned" : 15,    
    "nscannedObjectsAllPlans" : 15,    
    "nscannedAllPlans" : 15,    
    "scanAndOrder" : false,    
    "indexOnly" : false,    
    "nYields" : 0,    
    "nChunkSkips" : 0,    
    "millis" : 0,    
    "server" : "localhost.localdomain:27017",    
    "filterSet" : false    
}    
>

對比上面兩個查詢,對explain結果中的字段的解釋:

“cursor”:“BasicCursor”表示本次查詢沒有使用索引;“BtreeCursor  loc.city_1 ”表示使用了loc.city上的索引;

“isMultikey”表示是否使用了多鍵索引;

“n”:本次查詢返回的文檔數量;

“nscannedObjects”:表示按照索引指針去磁盤上實際查找實際文檔的次數;

”nscanned“:如果沒有索引,這個數字就是查找過的索引條目數量;

“scanAndOrder”:是否對結果集進行了排序;

“indexOnly”:是否利用索引就能完成索引;

“nYields”:如果在查詢的過程中有寫操作,查詢就會暫停;這個字段代表在查詢中因寫操作而暫停的次數;

“ millis”:本次查詢花費的次數,數字越小說明查詢的效率越高;

“indexBounds”:這個字段描述索引的使用情況,給出索引遍歷的范圍。

"filterSet" : 是否使用和索引過濾;

 

二、hint函數

如果發現MongoDB使用的索引和自己企望的索引不一致。,可以使用hit函數強制MongoDB使用特定的索引。例如

>db.users.find({“age”:1,”username”:/.*/}).hint({“username”:1,”age”:1})


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长岭县| 静海县| 张家港市| 荆州市| 商都县| 大新县| 和林格尔县| 安陆市| 千阳县| 沂源县| 黄骅市| 岑巩县| 石林| 周口市| 九龙坡区| 龙井市| 桂东县| 靖远县| 许昌市| 远安县| 宜宾县| 壤塘县| 巴南区| 会宁县| 永昌县| 仁怀市| 岑溪市| 濮阳市| 昔阳县| 天峻县| 靖远县| 通许县| 慈溪市| 玛曲县| 正阳县| 页游| 巴南区| 梨树县| 会理县| 铜山县| 息烽县|