C++简单测试MongoDB性能

许文君 2013-09-02 05:43:43
加精
表格似乎无法复制,可以到我的博客观看原文

http://blog.csdn.net/xuddk727/article/details/10937905


由于不进入数据库,本文并不能代表mongodb性能,仅以此与IO做简单对比得出性能并不科学,但也能从侧面说明一定问题,给大家开发中一定的提示。

附: 本文测试并作于2012年初,由于录入博客时间较晚,可能有所差异,欢迎提供最新数据。


测试数据大小:531M

读取数据大小:10^7 字节

由于MongoDB最快的内存文件读写方式大致如下(不进入数据库):

read(unsigned int nOffset , void *lpStore , unsigned int nStoreLen ),其每次读已默认进行了类似seek的偏移,因此,测试时使用seek 与没有 seek 的 同时进行测试,结果如下(单位:ms):

每次读1字节,共读10^7次,(seek对应10^7次)

without Seek


Seek


MongoDB

265


5678


3885

281


5601


3916

265


5612


3791

272


5726


3842

264


5709


3850

280


5702


3872

265


5600


3940

266


5631


3912



每次读取10 字节 ,共读 10^6次:

without Seek


Seek


MongoDB

31


608


390

31


562


406

31


577


390

47


577


390

16


577


375

31


577


390

31


562


422

31


577


390

31


562


390



读取10^7 BYTE 对于读取大内存块,两者性能几乎接近。



总结: 在测试中MongoDB对于连续性读取性能约仅为IO的1/10左右,但是相对每次进行偏移后取值存在较大优势(例如减灾系统中的数据信息模块,移动鼠标获取图像值,如下图),对于读取大内存,MongoDB性能与IO相差微乎其微。因此,颗粒度越大,MongoDB性能就越接近IO,如果将MongoDB作为底层,需要避免频繁小颗粒度的存取(零存整取)。


本文仅以简单方式测试了MongoDB不进入数据库下read,并不能代表MongoDB本身性能,只能说明如何更好的去应用它。
...全文
2597 41 打赏 收藏 转发到动态 举报
写回复
用AI写文章
41 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuzhongxunyu 2016-04-20
  • 打赏
  • 举报
回复
楼主好呢厉害啊
longqiwu 2013-09-15
  • 打赏
  • 举报
回复
很好啊,顶一个,学到了很多 ......................................
瘦又美 2013-09-11
  • 打赏
  • 举报
回复
牛人
longqiwu 2013-09-10
  • 打赏
  • 举报
回复
很好啊,顶一个,学到了很多 ............................
天天鱼 2013-09-10
  • 打赏
  • 举报
回复
非常感谢了。膜拜
弱水垂钓 2013-09-09
  • 打赏
  • 举报
回复
nettman 2013-09-09
  • 打赏
  • 举报
回复
mbugaifc 2013-09-07
  • 打赏
  • 举报
回复
zhangfk 2013-09-06
  • 打赏
  • 举报
回复
冰晶梦幻 2013-09-06
  • 打赏
  • 举报
回复
太牛了简直。大师
12346570 2013-09-05
  • 打赏
  • 举报
回复
学习学习 感觉不错
nettman 2013-09-05
  • 打赏
  • 举报
回复
dclop456321 2013-09-05
  • 打赏
  • 举报
回复
shan_ever 2013-09-04
  • 打赏
  • 举报
回复
不错啊,赞一个
SWHL1224 2013-09-04
  • 打赏
  • 举报
回复
很棒,科学合理!高端上档次,爱死mongodb
LNeo 2013-09-04
  • 打赏
  • 举报
回复
学习学习 感觉不错
最重要de你 2013-09-04
  • 打赏
  • 举报
回复
很好啊,顶一个,学到了很多
fishion 2013-09-04
  • 打赏
  • 举报
回复
占位学习下
达飞所问 2013-09-04
  • 打赏
  • 举报
回复
牛逼...
zyq5945 2013-09-04
  • 打赏
  • 举报
回复
加载更多回复(10)

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧