Mongodb 性能测试

  • 测试硬件环境 MacProcss

    • 处理器名称: Intel Core i7
    • 处理器速度: 2.5 GHz
    • 处理器数目: 1
    • 核总数: 4
    • L2 缓存(每一个核): 256 KB
    • L3 缓存: 6 MB
    • 内存: 16 GB
  • 测试软件环境缓存

    • MongoDB v3.2.4
    • 300W存量数据

1.1 单条插入性能测试

插入数据大小30字节bash

插入条数(单位:万) 耗时(单位:毫秒)
1 999
2 2176
5 5140
10 10198

结论:在当前测试环境下每秒写入速度为1万性能

1.2 单条读取性能测试

测试语句测试

db.follower.find({'user_id':1000069, 'follower_id': 1000089}).Limit(1) 
读取条数(单位:万) 耗时(单位:毫秒)
1 1227
2 2383
5 6024
10 12196

结论: 每秒读取速度 8000spa

1.3 分页读取性能测试——采用Skip实现

测试语句code

mg.C("follower").Find(condition).Sort("-_id").Skip(10000).Limit(10).All() 

按照每页10条计算ip

功能场景 耗时(单位:毫秒)
读取10000条以后的 10条数据 15
读取50000条以后的 10条数据 70
读取100000条以后的 10条数据 140

结论:
随着查询偏移量的上升(1w, 5w, 10w),查询耗时出现线性增加。尽可能避免使用 Skip 作为分页策略内存

1.4 批量写入性能测试

插入数据大小30字节string

一次插入条数 耗时(单位:毫秒) 速度 (单位: 毫秒/条)
5000 80 0.016
2000 32 0.016
1000 18 0.018
100 2.15 0.0215

结论:批次插入越多,单位时间越少

做者:baboon 连接:https://www.jianshu.com/p/c1ba8c45e6bf 来源:简书 简书著做权归做者全部,任何形式的转载都请联系做者得到受权并注明出处。
相关文章
相关标签/搜索