zoukankan      html  css  js  c++  java
  • 【转载】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

  • 相关阅读:
    android videoView 加载等待
    LocalBroadcastManager
    sessionStorage 、localStorage
    javascript 数组、json连接
    properties 文件注意事项
    nutz 使用beetl
    [Git/Github] ubuntu 14.0 下github 配置
    【UNIX环境编程、操作系统】孤儿进程和僵尸进程
    【操作系统】进程间通信
    【操作系统】线程
  • 原文地址:https://www.cnblogs.com/jecob/p/3691681.html
Copyright © 2011-2022 走看看