mongoDB批量插入數據性能分析、索引效率

硬件環境:

一臺華碩筆記本 AMD Athlon(tm) X2 Dual-Core ,1GB

軟件環境:

單機測試 ,非集羣環境 ,python腳本讀取一個含60W條數據的文件,插入數據庫。

測試方法:

批量插入n條數據,測試cpu、內存、執行時間數據。


測試結果


測試結果
數據量 cpu使用率 內存使用率 執行時間
1000 99% 3% 0.19
5000 99% 4% 0.9s
1W 99$ 6% 1.9s
10W 99% 20% 19s

結果分析:

在環境下,隨着一次批量插入的數據量的增加,平均單個數據插入耗時不變,cpu一直處於飽和狀態,內存使用路不斷增加。故,一次插入10000條以上數據不合適。


PS:python在讀取60W條數據的文件,保存到數組中,耗時不到一秒,這是java遠不能及的。。。。

        mongodb插入數據的時候,數據庫中本來就有幾十萬條數據,插入的速度沒有因此而降低。



索引性能分析

在插入數據的時候,如果數據庫簡歷了索引,會有一些性能損耗,但是查詢的時候,如果使用索引速度會大大提升。

 

是否使用索引 插入1W條數據耗時 從120W條數據中查找一條數據【根據索引查找】
          是              1.9s                                               0s
          否               1.8s                                               2.3s

結論:用索引,太好了,插入的時候那點性能損耗可以忽略。【這不廢話嗎。。。】


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章