当前位置: 首页 > mongodb, 分布式系统, 缓存系统 > 正文

mongodb调优记录

1 星2 星3 星4 星5 星 (暂无评分)
Loading ... Loading ...
baidu_share

最近往mongodb导入了一批数据,在百万左右。查询的时候很慢。查看程序找到对应的入口,该结果由多个查询结果组合而成。

在每个查询开始前记录当前时间,结束后打印查询花费的时间。终于发现某方法里面的查询花费时间很长,居然达到9000毫秒。查看代码段,是根据报纸版面id查询该版面下的文章列表。在文章表中加入报纸版面id索引。

db.article.ensureIndex({"sheet_id":1});

图片和文章id建立索引

 db.jpg.files.ensureIndex({"article_id":1});
 db.jpg.files.ensureIndex({"article_id":1,"_id":1});

按时间降序建立索引

 db.jpg.files.ensureIndex({"date":-1});

根据查询语句,建立了一批索引后,查询结果话费47毫秒,大功告成。

加入你的mongodb数据更新非常频繁,建立索引也会造成很大开销。如果基本是读操作,那就多建立索引。mongodb如果没有索引,将会是很慢的。

本文固定链接: http://www.chepoo.com/mongodb-optimization-record.html | IT技术精华网

【上一篇】
【下一篇】

mongodb调优记录:等您坐沙发呢!

发表评论