【转载】MongoDB 1000W级数据 Insert和Query和Delete性能测试

加索引测试:

  1. > db.users.getIndexes()  
  2. [  
  3.         {  
  4.                 "name" : "_id_",  
  5.                 "ns" : "test.users",  
  6.                 "key" : {  
  7.                         "_id" : 1  
  8.                 },  
  9.                 "v" : 0  
  10.         }  
  11. ]  
  12. > db.users.ensureIndex({NewsId:1})  
  13. > db.users.getIndexes()             
  14. [  
  15.         {  
  16.                 "name" : "_id_",  
  17.                 "ns" : "test.users",  
  18.                 "key" : {  
  19.                         "_id" : 1  
  20.                 },  
  21.                 "v" : 0  
  22.         },  
  23.         {  
  24.                 "_id" : ObjectId("4e2cc408572ff09d98851cb7"),  
  25.                 "ns" : "test.users",  
  26.                 "key" : {  
  27.                         "NewsId" : 1  
  28.                 },  
  29.                 "name" : "NewsId_1",  
  30.                 "v" : 0  
  31.         }  
  32. ]  

......................# MongoDB 加索引 插入1000W条测试 #...................

  1. ^_^[root@:~/svn/nugget/MongoDB/utest]#./insertData   
  2. MongoDB Connected OK!  
  3. Time:2019s:19419μs  

......................# MongoDB 加索引 1000W条测试遍历测试 #...................

 

还是一样取最后一条数据,然后看下性能:

  1. ^_^[root@:/usr/local/mongodb/bin]#./mongo <bat.js   
  2. MongoDB shell version: 1.8.2  
  3. connecting to: test  
  4. > var startTime = new Date();  
  5. >   
  6. > db.users.find({NewsId:"nxuvdqtjrrptoyildolesbkqmd"});  
  7. "_id" : ObjectId("4e2ccc2ea1ca039d82b9e4b3"), "NewsId" : "nxuvdqtjrrptoyildolesbkqmd" }  
  8. >   
  9. > (new Date().getTime()-startTime.getTime())/1000  
  10. 0.022s  
  11. > bye  

......................# MongoDB 加索引 删除1000W条测试 #...................

  1. ^_^[root@:/usr/local/mongodb/bin]#./mongo 10.7.3.228 < bat.js  
  2. MongoDB shell version: 1.8.2  
  3. connecting to: 10.7.3.228/test  
  4. > var startTime = new Date();    
  5. //db.users.find({NewsId:"csgsqdglbyfuwdjfkkrxgzyacc"});     
  6. > db.users.remove()  
  7. > (new Date().getTime()-startTime.getTime())/1000   
  8. 570.782  
  9. > bye  

 

......................# MongoDB 加索引 1000W中删除一条测试 #...................
 
  1. ^_^[root@:/usr/local/mongodb/bin]#./mongo 10.7.3.228 < bat.js  
  2. MongoDB shell version: 1.8.2  
  3. connecting to: 10.7.3.228/test  
  4. > var startTime = new Date();    
  5. //db.users.find({NewsId:"csgsqdglbyfuwdjfkkrxgzyacc"});     
  6. > db.users.remove({"NewsId":"cikjwikamhtixoykrrfjnepkwu"})  
  7. > (new Date().getTime()-startTime.getTime())/1000   
  8. 0.025  
  9. > bye  

 

总结下测试数据吧:

没索引
添加 1 千万 记录  Time:207s:194125μs   

查询 5.846s

删除全部 103.94s  

删除最后一条 3.991s



有索引
添加 1 千万 记录 Time:2019s:19419μs 

查询 0.022s 

 

删除全部 570.782s  

删除最后一条 0.025s

posted @ 2014-04-26 16:29  枯树之花  阅读(798)  评论(0编辑  收藏  举报