MongoDB学习笔记5 - 测试查询性能
来源:互联网 发布:工业设计需要的软件 编辑:程序博客网 时间:2024/04/27 18:20
大规模数据导入实验
在上一个实验中,我们测试了导入数据的性能,简单总结一下测试方法:
1. Schema: 每行数据三个字段,日期、ID和当日流量,都是长整型
2. Index: inventory.create_index([('date',ASCENDING), ('id',ASCENDING)], unique=False, dropDups=False)
3. 用mongoimport导入csv数据
随后我们在大规模的数据上进行了测试,导入360天的数据,每天100万行记录。同样的数据导入两次,由于索引不是unique的,最终的数据库里每天每个ID有会两条数据,总共720M行记录。以下是测试结果:
查询性能实验
在前面两次导入数据的基础上,我们测试了数据查询性能。在我们的应用里,主要场景是随机查询某个ID最近两个月的数据,所以测试方法如下:
1. 清空系统缓存
echo 3 > /proc/sys/vm/drop_caches (需要root权限)
2. 随机选取1000个ID,查询最近60天的流量
inventory.find({'date':{'$gte':today - 60 * 86400, '$lte':today},'id':id})
3. 计算平均查询时间
结果如下:
1. 查询最近60天的数据,每个查询返回120条记录,平均时间是0.28秒
2. 查询总共360天的数据,每个查询返回720条记录,平均时间是4.26秒
这样的性能对我们目前的应用来说足够了:)
- MongoDB学习笔记5 - 测试查询性能
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- MongoDB学习笔记(查询)
- mongodb学习笔记2,mongodb的查询
- MongoDB学习笔记3(查询)
- mongodb 学习笔记-高级查询
- 学习性能测试笔记
- MongoDB与MySQL的插入、查询性能测试
- MongoDB与MySQL的插入、查询性能测试
- Qt3 与 Qt4 的区别
- 与王志乐聊跨国公司与中国经济
- 给自己的机器配置一个统一的代理出口
- 与王志乐聊跨国公司与中国经济
- Web开发人员必备的20款超赞的jQuery插件
- MongoDB学习笔记5 - 测试查询性能
- pz之1204
- Java语法总结 - 线程(转帖)
- 常见的正则表达式
- C#设计模式-外观模式(Facade Patten)
- 用好ssh_config
- CRM ||单机呼叫中心 ||QT CRM 示例||SQLite CRM 示例
- live555开发的流媒体服务器软件
- 怎样成为优秀软件模型设计者