文章出處
文章列表
索引這個東西大家不會陌生,只要接觸到稍微大一點的數據,都會用到這東西,它可以提升查詢的速度,相當代價就是占用了更多的存儲空間,這也是正常的,符合“能量守恒定理”,哈哈!今天說的是MongoDB里的索引,在我進行對500萬數據進行查詢測試時,發現如果你的查詢字段不加索引,那是相當恐怖的,一個簡單的查詢(單字段)要耗時30多秒,這種操作,基本可以認為服務器掛了,哈哈!當為字段加了索引之后,查詢速度為ms級,100毫秒以內的速度真是把經興奮壞了,呵呵!
建立索引 db.tableName.ensureIndex({"fieldName",1|-1})
對于為500萬的數據加索引相當需要占用一點點時間了,不是馬上響應的,這也會正常,呵呵!當加完索引后,你可以通過MongoVUE這種可視化工具對它進行查看,或者直接用命令db.tableName.getIndexes()也可以
在選中數據庫background后,我們可以看到它的集合數據和集合索引分別占用的空間
當為表(集合,collection)加上索引后,我們的WEB頁面測試一下可以看到,頁面響應在ms級,非常快!
對于單表查詢來說,MongoDB在添加了索引后,執行的速度和穩定性確實是可以信賴的,在進行復雜計算時,MongoDB也為我們提供了MapReduce功能,在以后的文章中也會單獨講它!
文章列表
全站熱搜