五步优化你的MongoDB

下面PPT和视频的作者是MongoDB的开发工程师Jared Rosoff,他从下面几个方面对MongoDB的几个优化点进行了讲解和描述。这些优化实际上也适用于很多其它的数据库。

1.查询优化

确认你的查询是否充分利用到了索引,用explain命令查看一下查询执行的情况,添加必要的索引,避免扫表操作。

2.搞清你的热数据大小

可能你的数据集非常大,但是这并不那么重要,重要的是你的热数据集有多大,你经常访问的数据有多大(包括经常访问的数据和所有索引数据)。使用MongoDB,你最好保证你的热数据在你机器的内存大小之下,保证内存能容纳所有热数据。

3.选择正确的文件系统

MongoDB的数据文件是采用的预分配模式,并且在Replication里面,Master和Replica Sets的非Arbiter节点都是会预先创建足够的空文件用以存储操作日志。这些文件分配操作在一些文件系统上可能会非常慢,导致进程被Block。所以我们应该选择那些空间分配快速的文件系统。这里的结论是尽量不要用ext3,用ext4或者xfs。

4.选择合适的硬盘

这里的选择包括了对磁盘RAID的选择,也包括了磁盘与SSD的对比选择。

5.Shard分片

在单个节点压力太大时,我们可以考虑使用MongoDB的auto-sharding机制来将数据分片到多个节点以缓解压力。

下面就是其视频和PPT(PPT由NoSQLFan从视频上截取下来,比较模糊,哪位同学有高清的可以提供给我们,非常感谢!)


anyShare赠人玫瑰,手有余香,分享知识,德艺双馨!
          

无觅相关文章插件,快速提升流量

分类 MongoDB · tag ,

  1. iammutex, 你可以在http://www.slideshare.net/Dataversity/tue-1700-rosoffjaredcolor获取比较清晰的ppt

  2. mongoDB中如何对文本进行模糊查询?数据量已经达到5K万!用java正则表达式进行查询奇慢,寻找更好的解决方法!