我們可以使用如何測量mongodb索引時間?
db.phones.find({場: '值'})。說明()
得到查詢 '米利斯'。
,但如果我想知道時間(成本),以指數
像
db.phones.ensureIndex什麼。({面積:1})解釋()
我可以使用mongoshell或其他更好的方法來衡量制作索引的時間嗎?
我們可以使用如何測量mongodb索引時間?
db.phones.find({場: '值'})。說明()
得到查詢 '米利斯'。
,但如果我想知道時間(成本),以指數
像
db.phones.ensureIndex什麼。({面積:1})解釋()
我可以使用mongoshell或其他更好的方法來衡量制作索引的時間嗎?
構建索引的成本受許多變量的影響,包括索引的複雜性,要索引的文檔數量以及您當前正在執行的MongoDB服務器的其他操作。
沒有一個explain()
相當於估計成本,但是你絕對可以得到的經過時間來建立初始索引感:
的mongo
外殼具有verbose
模式,它會顯示你操作需要多長時間。啓用該選項,然後建立索引的前景:
> set verbose true
> db.tweets.ensureIndex({'lang':1,'protected':1})
Inserted 1 record(s) in 262ms
grep的你mongod
日誌中建(前景或背景)和相關的時機「建立索引」看指標:
> grep "build index" /path/to/mongodb.log
Wed Jan 1 12:45:05.102 [conn3] build index twitter.tweets { lang: 1.0, protected: 1.0 }
Wed Jan 1 12:45:05.363 [conn3] build index done. scanned 51428 total records. 0.26 secs
我真的不確定爲什麼你會想知道這個,除非你計劃動態創建索引這是一個非常糟糕的主意,但是,你可以使用currentOP()來查看索引器是否仍在運行。 – Sammaye
這只是爲了我的好奇心:) – vansdog
我不認爲它會進入配置文件集合,我認爲只有物理查詢會這樣我認爲唯一的方法atm是通過分析當前的op – Sammaye