婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 基于MongoDB數據庫索引構建情況全面分析

基于MongoDB數據庫索引構建情況全面分析

熱門標簽:怎么投訴地圖標注 電銷機器人是什么軟件 呼和浩特電銷外呼系統加盟 廣州長安公司怎樣申請400電話 濟南電銷機器人加盟公司 老虎洗衣店地圖標注 云南外呼系統 蘋果汽車租賃店地圖標注 杭州人工電銷機器人價格

前面的話

本文將詳細介紹MongoDB數據庫索引構建情況分析

概述

創建索引可以加快索引相關的查詢,但是會增加磁盤空間的消耗,降低寫入性能。這時,就需要評判當前索引的構建情況是否合理。有4種方法可以使用

1、mongostat工具

2、profile集合介紹

3、日志

4、explain分析

mongostat

mongostat是mongodb自帶的狀態檢測工具,在命令行下使用。它會間隔固定時間獲取mongodb的當前運行狀態,并輸出。如果發現數據庫突然變慢或者有其他問題的話,首先就要考慮采用mongostat來查看mongo的狀態

mongostat是查看mongodb運行狀態的程序,使用方式如下

mongostat -h ip:port

【字段說明】

insert/s : 每秒插入數據庫的對象數量,如果是slave,則數值前有*,則表示復制集操作
query/s : 每秒的查詢操作次數
update/s : 每秒的更新操作次數
delete/s : 每秒的刪除操作次數
getmore/s: 每秒查詢cursor(游標)時的getmore操作數
command: 每秒執行的命令數,在主從系統中會顯示兩個值(例如 3|0),分別代表 本地|復制 命令
dirty: 臟數據字節的緩存百分比
used:正在使用中的緩存百分比
flushes:checkpoint的觸發次數在一個輪詢間隔期間。一般都是0,間斷性會是1, 通過計算兩個1之間的間隔時間,可以大致了解多長時間flush一次。flush開銷是很大的,如果頻繁的flush,可能就要找找原因了
vsize: 虛擬內存使用量,單位MB 
res: 物理內存使用量,單位MB。 res會慢慢的上升,如果res經常突然下降,要查看下是否有別的程序狂吃內存
qr: 客戶端等待從MongoDB實例讀數據的隊列長度
qw:客戶端等待從MongoDB實例寫入數據的隊列長度
ar: 執行讀操作的活躍客戶端數量
aw: 執行寫操作的活客戶端數量。如果ar或aw數值很大,那么就是DB被堵住了,DB的處理速度不及請求速度。查看是否有開銷很大的慢查詢。如果查詢一切正常,確實是負載很大,就需要加機器了
netIn:MongoDB實例的網絡進流量
netOut:MongoDB實例的網絡出流量
conn: 打開連接的總數,是qr,qw,ar,aw的總和
time:當前時間

【實例】

插入100000條數據,并打開mongostat查詢mongodb運行狀態

由下圖看出,插入值insert值在插入數據時大量增加,在插入完畢后變成0。flush兩個1之間的間隔時間很長,說明性能還不錯;res在慢慢上升,沒有出現突然下降的情況,說明沒有其他的程序大量占用內容的情況;qrw及arw數據很小,說明數據庫讀寫狀態正常,負載較小。總體而言,mongodb數據庫運行狀態良好

profile

mongodb可以通過profile來監控數據,進行優化

【級別】

首先,要查看當前是否開啟profile功能

使用下面的命令會返回level等級,值為0|1|2,0代表關閉,即不記錄任何操作;1代表記錄慢命令(默認值為100ms),即記錄運行時間超過100ms的操作;2代表全部,即記錄任何操作

db.getProfilingLevel() 

使用下面的命令可以設置level等級

db.setProfilingLevel() 

如下圖所示,默認地,profile關閉。使用setProfilingLevel()方法以50ms慢命令的方式開啟profile

【狀態】

操作被記錄到system.profile集合中

通過db.system.profile.find() 查看當前的監控日志

op:操作類型
ns:命名空間
query:查詢字符串
responseLength:返回長度
ts:時間
mills:執行耗時

【使用】

在系統中開啟profile之后,如果profile記錄的數據非常大,會比較明顯的降低系統的性能。因此,profile的使用場景一般是新系統上線之前的測試階段,以及剛上線時的觀察階段,查看數據庫的設計及應用程序的使用是否正常。如果profile記錄了大量的字段,需要調整系統附在、調整索引等,減小它的大小

日志

在配置日志文件時,可以使用verbose參數來配置日志詳細程度,參數值從'v'到'vvvvv','v'越多,詳細度越高

日志會記錄mongodb的運行狀態,包括連接時間、當前正在進行的操作等

explain

MongoDB 提供了一個 explain 命令讓我們獲知系統如何處理查詢請求。利用 explain 命令,可以很好地觀察系統如何使用索引來加快檢索,同時可以針對性優化索引

explain有三種模式,分別是:queryPlanner、executionStats、allPlansExecution。現實開發中,常用的是executionStats模式

首先,插入10萬條數據

在time字段上建立索引

接著,尋找time范圍在100和200之間的文檔,并使用explain()

結果分為queryPlanner、executionStats和serverInfo三個部分。接下來,將分別對這三個部分的結果進行詳細分析

【queryPlanner】

queryPlanner.plannerVersion: 版本

queryPlanner.namespace: 查詢的表

queryPlanner.indexFilterSet: 針對該query是否有indexfilter

queryPlanner.parsedQuery: 查詢條件

queryPlanner.winningPlan: 查詢優化器針對該query所返回的最優執行計劃的詳細內容

queryPlanner.winningPlan.stage: 最優執行計劃的stage

queryPlanner.winningPlan.inputStage: 用來描述子stage,并且為其父stage提供文檔和索引關鍵字。

queryPlanner.winningPlan.inputstage.stage,此處是IXSCAN,表示進行的是index scanning

queryPlanner.winningPlan.inputstage.keyPattern: 索引鍵值對

queryPlanner.winningPlan.inputstage.indexName:索引名稱

queryPlanner.winningPlan.inputstage.isMultiKey: 是否是Multikey,此處返回是false,如果索引建立在array上,此處將是true

queryPlanner.winningPlan.inputstage.direction:查詢順序,此處是forward,如果用了.sort({time:-1})將顯示backward

queryPlanner.winningPlan.inputstage.indexBounds: 所掃描的索引范圍

queryPlanner.rejectedPlans:其他執行計劃

【executionStats】

executionStats.executionSuccess: 是否成功

executionStats.nReturned: 查詢返回條目個數

executionStats.totalKeysExamined: 索引掃描條目個數

executionStats.totalDocsExamined: 文檔掃描條目個數

executionStats.executionStages.stage: 掃描類型

executionStats.executionTimeMillis: 整體查詢時間

executionStats.executionStages.executionTimeMillisEstimate: 根據索引檢索文檔獲得數據的時間

executionStats.executionStages.inputStage.executionTimeMillisEstimate: 掃描索引所用時間

【serverInfo】

serverInfo.host: 主機名

serverInfo.port: 端口

serverInfo.version: 版本

serverInfo.gitVersion: git版本

【性能分析】

1、執行時間

executionTimeMillis值越小越好

2、條目數量

最理想的狀態是: nReturned=totalKeysExamined=totalDocsExamined

3、stage類型

stage的類型列舉如下:

COLLSCAN:全表掃描
IXSCAN:索引掃描
FETCH:根據索引去檢索指定document
SHARD_MERGE:將各個分片返回數據進行merge
SORT:表明在內存中進行了排序
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的返回

不希望看到包含如下的stage:

COLLSCAN(全表掃描)
SORT(使用sort但是無index)
不合理的SKIP
SUBPLA(未用到index的$or)
COUNTSCAN(不使用index進行count)

以上這篇基于MongoDB數據庫索引構建情況全面分析就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • MongoDB索引使用詳解
  • MongoDB的基礎查詢和索引操作方法總結
  • MongoDB性能篇之創建索引,組合索引,唯一索引,刪除索引和explain執行計劃
  • MongoDB中創建索引需要注意的事項
  • pymongo給mongodb創建索引的簡單實現方法
  • MongoDB查詢字段沒有創建索引導致的連接超時異常解案例分享
  • MongoDB學習筆記(六) MongoDB索引用法和效率分析
  • mongodb處理中文索引與查找字符串詳解
  • pymongo為mongodb數據庫添加索引的方法
  • MongoDB數據庫中索引(index)詳解
  • Mongodb索引的優化
  • MongoDB入門教程之索引操作淺析
  • MongoDB教程之索引介紹
  • MongoDB的索引
  • MongoDB數據庫中索引和explain的使用教程
  • mongodb索引知識_動力節點Java學院整理
  • MongoDB TTL索引的實例詳解
  • 關于MongoDB索引管理-索引的創建、查看、刪除操作詳解

標簽:興安盟 廈門 雞西 遼陽 無錫 玉林 自貢 泰安

巨人網絡通訊聲明:本文標題《基于MongoDB數據庫索引構建情況全面分析》,本文關鍵詞  基于,MongoDB,數據庫,索引,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《基于MongoDB數據庫索引構建情況全面分析》相關的同類信息!
  • 本頁收集關于基于MongoDB數據庫索引構建情況全面分析的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产一区久久久| 欧美日韩在线三区| 欧美日韩中文字幕一区| 制服丝袜亚洲色图| www.亚洲精品| 国产精品亚洲а∨天堂免在线| 亚洲成人动漫在线观看| 午夜精品在线视频一区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 91极品美女在线| 免费视频一区二区| 一区二区三区在线观看视频 | 国产伦精品一区二区三区视频青涩 | 视频在线在亚洲| 色88888久久久久久影院野外| www.av亚洲| 91精品久久久久久久99蜜桃| 欧美美女一区二区在线观看| 欧美sm美女调教| 国产欧美日韩另类视频免费观看| 午夜欧美视频在线观看 | 国产乱码精品一区二区三区五月婷| 欧美在线观看视频在线| 久久久久久夜精品精品免费| 欧美激情在线看| 一区二区三区在线观看欧美| 欧美日韩精品久久久| 日本午夜一区二区| 成人黄色777网| 欧美一级艳片视频免费观看| 中文字幕在线免费不卡| 91麻豆.com| 欧美三级在线视频| 亚洲国产激情av| 9人人澡人人爽人人精品| 2024国产精品| 91在线视频官网| 成人激情校园春色| 综合网在线视频| 国产91综合网| 亚洲激情在线播放| 在线免费观看一区| 一区二区三区成人在线视频| 欧美制服丝袜第一页| 欧美日韩欧美一区二区| 狠狠色综合播放一区二区| 欧美国产精品劲爆| 久久精品免视看| 国产无人区一区二区三区| 麻豆国产精品777777在线| 欧美伦理视频网站| 在线观看成人免费视频| 色一情一伦一子一伦一区| 久久机这里只有精品| 欧美挠脚心视频网站| 国产精品久久久久影院| 不卡av在线网| 日韩精品色哟哟| 日韩午夜精品视频| 99久久精品费精品国产一区二区| 国产精品免费久久久久| 欧美日韩色综合| 国产馆精品极品| 亚洲福利视频一区| 亚洲欧美日韩国产一区二区三区 | 91精品国产美女浴室洗澡无遮挡| 日韩精品91亚洲二区在线观看| 欧美成人猛片aaaaaaa| 9l国产精品久久久久麻豆| 不卡视频一二三| 亚洲成人免费在线| 日韩精品色哟哟| 欧美亚洲尤物久久| 欧美日韩国产大片| 欧美成人精精品一区二区频| 精品av综合导航| 久久久久久久久蜜桃| 国产亚洲午夜高清国产拍精品| 精品国产1区2区3区| 99精品国产视频| 欧美大度的电影原声| 亚洲男人的天堂一区二区| 久久福利视频一区二区| 国产不卡视频在线播放| 色综合亚洲欧洲| 欧美96一区二区免费视频| av成人老司机| 国产午夜亚洲精品羞羞网站| 日本大香伊一区二区三区| 国产日本一区二区| 五月天激情小说综合| 欧美午夜一区二区三区| 亚洲国产精品高清| 久久蜜桃av一区精品变态类天堂| 日韩精品一区二区三区蜜臀| 亚洲一二三四区| 白白色 亚洲乱淫| 欧美日韩成人综合天天影院 | 国产精品水嫩水嫩| 日韩精品欧美精品| 9i看片成人免费高清| 国产嫩草影院久久久久| 三级欧美在线一区| 日本精品裸体写真集在线观看| 久久久久高清精品| 久久不见久久见免费视频7| 色网综合在线观看| 国产成人在线色| 欧美成人官网二区| 免费av成人在线| 亚洲国产精品v| 亚洲成a人v欧美综合天堂下载| 欧美精品777| 欧美成人vr18sexvr| 91麻豆精品国产91久久久资源速度| 国产欧美久久久精品影院 | 日本欧美韩国一区三区| 国内精品第一页| 亚洲欧美影音先锋| 日韩一二三区视频| www.在线成人| 国产激情视频一区二区在线观看| 国产精品久久久久久久久免费桃花| 欧洲一区二区三区免费视频| 99re热视频精品| 欧美三级三级三级| 欧美在线视频你懂得| 成人精品一区二区三区四区| 一本一本大道香蕉久在线精品| 欧美色区777第一页| 久久久综合视频| 夜夜操天天操亚洲| 国产精品亚洲一区二区三区在线| 一本一道综合狠狠老| 欧美视频第二页| 国产日韩v精品一区二区| 亚洲国产精品尤物yw在线观看| 亚洲一区二区美女| www.在线欧美| 国产精品久线观看视频| 精品一区二区三区久久| 在线亚洲欧美专区二区| 国产精品美女久久久久久久久| 青青青伊人色综合久久| 91久久精品一区二区| 久久精品视频在线看| 精品在线播放免费| 精品美女在线观看| 久久精品久久综合| 欧美高清激情brazzers| 奇米精品一区二区三区在线观看一| 韩国成人在线视频| 欧美xxxxxxxxx| 精品在线你懂的| 国产婷婷色一区二区三区在线| 激情伊人五月天久久综合| 色综合 综合色| 丝瓜av网站精品一区二区| 欧美日韩1区2区| 久久99国产精品麻豆| 国产精品无人区| 欧美日韩精品系列| 色素色在线综合| 加勒比av一区二区| 欧美极品aⅴ影院| 国产91精品精华液一区二区三区| 久久久久97国产精华液好用吗| 成人永久免费视频| 欧美喷水一区二区| 国精品**一区二区三区在线蜜桃 | 婷婷久久综合九色综合绿巨人 | 成人免费视频app| 日一区二区三区| 国产精品网站导航| 久久精品日产第一区二区三区高清版| 国产无人区一区二区三区| 成人18视频在线播放| 国内一区二区在线| 亚洲国产你懂的| 成人欧美一区二区三区在线播放| 欧美四级电影在线观看| 99久久婷婷国产精品综合| 美脚の诱脚舐め脚责91| 奇米777欧美一区二区| 亚洲午夜精品网| 亚洲一区免费观看| 亚洲成在人线在线播放| 午夜伊人狠狠久久| 欧美日韩国产影片| 欧美日韩不卡一区| 欧美色图激情小说| 色天天综合久久久久综合片| 国产成人啪免费观看软件| 国内精品伊人久久久久av一坑| 天天综合色天天综合色h| 国产欧美中文在线| 中文字幕亚洲欧美在线不卡| 亚洲欧洲一区二区在线播放| 亚洲免费在线观看视频| 亚洲永久免费av|