MongoDB 一直是最流行的 NoSQL,而根据 DB-Engines Ranking 最新的排行,时下 MongoDB 已经击败 PostgreSQL 跃居数据库总排行的第四位,仅次于 Oracle、MySQL 和 Microsoft SQL Server,此文中总结了如何对 MongoDB 进行性能调优,本文系OneAPM工程师编译整理。
大家在使用 MongoDB 的时候有没有碰到过性能问题呢?这里总结了 MongoDB 性能优化的五个步骤,希望能够有所帮助。
第一步:找出慢语句
一般来说查询语句太慢和性能问题瓶颈有着直接的关系,所以可以用 MongoDB 的性能分析工具来找出这些慢语句:
- db.setProfilingLevel(1, 100);
第二步:使用explain分析
通过使用 explain 来对这些慢语句进行诊断。此外还可以 mtools 来分析日志。
第三步:创建索引
分析完之后需要创建新的索引 (index) 来提升查询的性能。别忘了在 MondoDB 中可以在后台创建索引以避免 collections 锁和系统崩溃。
第四步:使用稀疏索引来减少空间占用
如果使用 sparse documents,并重度使用关键字 $exists,可以使用 sparse indexes 来减少空间占用提升查询的性能。
第五步:读写分离
如果读写都在主节点的话,从节点就一直处在空置状态,这是一种浪费。对于报表或者搜索这种读操作来说完全可以在从节点实现,因此要做的是在 connection string 中设置成 secondarypreferred。
小结
这些方法虽然能够起一定的作用,但最主要的目的还是为架构上的提升争取点时间罢了。
原文链接:5 Steps to Take Care of Your MongoDB Performance
相关推荐
这里总结了MongoDB性能优化的五个步骤,希望能够有所帮助。 第一步:找出慢语句 一般来说查询语句太慢和性能问题瓶颈有着直接的关系,所以可以用MongoDB的性能分析工具来找出这些慢语句: db.setProfilingLevel
《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...
《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...
/ sparrowql 声明式MongoDB聚合。 | | 包括什么? 仅在需要时自动进行$lookup 声明式管道生成 针对多集合查询进行了优化 ...假设您有一个简单的数据库模型: 和一些固定装置: const blogs = [ { _id : 0 , owne
优化配置 性能测试基础准备 性能测试基础准备 在⼤数据性能测试时,需要准备相关的基础⼯作,如下: 数据准备,我们需要在不同的节点准备什么量级数据? ⽇志预估,在测试过程中,可能会⽣成多⼤的⽇志,⽇志的可能...
优化器(主要对执行的 SQL 优化选择最优的执行方案方法) 执行器(执行时会先看用户是否有执行权限,有才去使用这个引擎提供的接口)-> 去引擎层获取数据返回(如果开启查询缓存则会缓存查询结果) 索引相关 3、...
优化器(主要对执行的 SQL 优化选择最优的执行方案方法) 执行器(执行时会先看用户是否有执行权限,有才去使用这个引擎提供的接口)-> 去引擎层获取数据返回(如果开启查询缓存则会缓存查询结果) 索引相关 3、...
对超过5位以上的内部网络功能人员进行了培训,包括有关如何独立进行较小更新或更改的步骤。 修复了来自现有网站的错误,并实施了可显着提高Web功能和速度的增强功能。 语言: 工作经历 : LinkYou Inc 前端开发...
│ 第56节:Varnish对性能的提升和优化.avi │ 第57节:应用上Varnish后的体系结构.avi │ 第58节:Memcached入门和缓存的含义.avi │ 第59节:Memcached基本的工作原理.avi │ 第60节:Memcached基本的操作命令.avi...
18 3.3 初始步骤 ................................................................................................................................... 18 3.3.1 视图和布局 ..................................