大家在使用MongoDB的时候有没有碰到过性能问题呢?这里总结了MongoDB性能优化的五个步骤,希望能够有所帮助。
第一步:找出慢语句
一般来说查询语句太慢和性能问题瓶颈有着直接的关系,所以可以用MongoDB的性能分析工具来找出这些慢语句:
db.setProfilingLevel(1, 100);
第二步:使用explain分析
通过使用explain来对这些慢语句进行诊断。此外还可以mtools来分析日志。
第三步:创建索引
分析完之后需要创建新的索引(index)来提升查询的性能。别忘了在MondoDB中可以在后台创建索引以避免collections 锁和系统崩溃。
第四步:使用稀疏索引来减少空间占用
如果使用sparse documents,并重度使用关键字$exists,可以使用sparse indexes来减少空间占用提升查询的性能。
第五步:读写分离
如果读写都在主节点的话,从节点就一直处在空置状态,这是一种浪费。对于报表或者搜索这种读操作来说完全可以在从节点实现,因此要做的是在connection string中设置成secondarypreferred。
小结
这些方法虽然能够起一定的作用,但最主要的目的还是为架构上的提升争取点时间罢了。
来源:oschina
链接:https://my.oschina.net/u/2425443/blog/514892