阅读更多

0顶
0踩

数据库

转载新闻 MongoDB 性能优化五个简单步骤

2015-10-13 16:43 by 副主编 mengyidan1988 评论(1) 有9004人浏览
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

译文来自:OneAPM
来自: OneAPM
0
0
评论 共 1 条 请登录后发表评论
1 楼 mangguo 2015-10-14 11:04
不错,有兴趣的同学可以到这里来练习练习:
http://www.hubwiz.com/coursecenter?type=database

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 如何对 MongoDB 进行性能优化(五个简单步骤)

    这里总结了MongoDB性能优化的五个步骤,希望能够有所帮助。 第一步:找出慢语句 一般来说查询语句太慢和性能问题瓶颈有着直接的关系,所以可以用MongoDB的性能分析工具来找出这些慢语句: db.setProfilingLevel

  • 莫名其妙

    要玩ns,下载版本2.27,利用vc编译,报错改makefile 报错 改makefile 报错:不认识std... 开始改源文件报错源文件。。。。。。。。。(改了1个小时以上) 最后几个文件夹了,报错:无法nmake .tcl文件??!! 装cygwin install 成功!!! 开始做试验,发现问题,调试!报错:找不到source file 看configure, 然后 ./co

  • 超级忙碌的一周

    archiva项目又是没有动过,课外书如果不是今天莫名其妙熬夜,也差不多没有看。。。本周真是过得快。。。总结一下下我肯定会忘记的东西。。。:一。重新看了看mpeg4的大纲。         1。mpeg4希望建立起一个multimedia的系统,同时包括local的和remote的,类似于现今的文件系统,既然是文件系统,自然要定义一下系统方式,也就是DMIF network interfa

  • H264白皮书

    理论上我是知道一点点的mpeg4的,但是貌似忘记了,本来要重新看mpeg4,结果有人告诉我h264肯定比mpeg4要好,结果就被派去看h264了,看完了一个什么白皮书以后,只好替h264吹嘘一下了:1。Intra prediction: 引入了从周围象素预测的招数2。Inter Perdiction: 把macroblock砍啊砍啊,分啊分啊,号称可以预测的更好。虽然运动向量增加了,但是同

  • 80后和他们的父亲们

    我们是这样的一代人:当我们读小学的时候,读大学不要钱;当我们读大学的时候,读小学不要钱;我们还没能工作的时候,工作也是分配的;我们可以工作的时候,撞得头破血流才勉强找份饿不死人的工作做;当我们不能挣钱的时候,房子是分配的;当我们能挣钱的时候,却发现房子已经买不起了;当我们没有进入股市的时候,傻瓜都在赚钱;当我们兴冲冲地闯进去的时候,才发现自己连傻瓜都不如 。   我爸爸说他那一代人更惨一些:读...

  • 《doom启示录》读后感

    罗梅洛的失败之处不是由于在技术和设计之争中输给了 卡马克,而是 一方面他要做个玩家,一方面要把公司做大。。。   卡马克,大部分程序员的偶像,专注来源于兴趣?不,还有自信,和。。。责任

  • mongdo 减少访问量_MongoDB 性能优化五个简单步骤

    如何对 MongoDB 进行性能优化(五个简单步骤)MongoDB一直是最流行的NoSQL,而根据DB-Engines Ranking最新的排行,时下MongoDB已经击败PostgreSQL跃居数据库...这里总结了MongoDB性能优化的五个步骤,希望能够有所帮助...

  • MongoDB性能优化五个简单步骤

    这里总结了MongoDB性能优化的五个步骤,希望能够有所帮助。 第一步:找出慢语句 一般来说查询语句太慢和性能问题瓶颈有着直接的关系,所以可以用MongoDB的性能分析工具来找出这些慢语句:   db....

  • MONGODB 性能优化 10 个TIPS 来自超级专家的经验

    偶然看到一个视频,关于mongodb 的 10 erformance tuning TIPS , 介绍这与下面的三位是同时期的IT 工作者,下面图中的三位就没有必要介绍了,都是 big ...

  • mongoDB 性能优化

    使用explain方法来查看查询的执行计划。explain方法提供了关于查询性能的详细信息,包括查询使用的索引、文档的扫描数量等。

  • 终于可以转正了呀...

    也不知道大家的感觉怎么样,我实习的一年时间终于熬过来了,马上就要转正了,工资可以多拿了,呵呵...

  • 配置adhoc

    今天用cisco的网卡配置两台adhoc的机器, 使用cisco自带的配置软件,结果一切换成adhoc方式就 死机。搞了无数年以后,发现使用windows自己的网络管理器 居然可以。。。代价如果要连接access point没有办法用÷ leap的安全方式了,nus指定安全方式。。。 只好说。。。cisco太搞了。。。

  • 优化Linux以提升MongoDB性能

    优化Linux以提升MongoDB性能 除MongoDB本身的配置外,操作系统的配置也会影响数据库的性能 实现所有MongoDB Server的时间同步 减少时间戳记录 关闭磁盘预读值(read-ahead) 关闭内存管理 禁用非同意内存访问(non-...

  • 数据库性能优化步骤_五个简单步骤即可提高数据库性能

    数据库性能优化步骤 2015年1月30日:根据读者的反馈意见,第4节“您是否有足够的数据库连接?” 已修改。 数据库访问是大多数应用程序的核心功能。 根据我们的经验,对于我们看到的所有应用程序中至少有80%,...

  • 解决MongoDB中的性能调优与优化问题

    作者:禅与计算机程序设计艺术 解决MongoDB中的性能调优与优化问题 作为一名人工智能专家,程序员和软件架构师,我今天将介绍如何解决MongoDB中的性能调优与优化问题。 引言

  • 直播分享| 腾讯云 MongoDB 智能诊断及性能优化实践

    本次直播分享主要分为五个部分展开:第一部分:主要介绍 MongoDB 的核心优势;第二部分:主要总结云上 MongoDB 用户常见的一些问题;第三部分:介绍腾讯云 MongoDB 智能索引推荐实现流程及其实现原理;第四部分:...

  • 基于springboot+Javaweb的二手图书交易系统源码数据库文档.zip

    基于springboot+Javaweb的二手图书交易系统源码数据库文档.zip

  • Linux课程设计.doc

    Linux课程设计.doc

  • 课程考试的概要介绍与分析

    课程考试资源描述 本资源是为应对各类课程考试而精心准备的综合性学习包。它包含了多门学科的考试指南、历年真题、模拟试题以及详细的答案解析。这些资源旨在帮助学生系统复习课程内容,理解考试要点,提高解题技巧,从而在考试中取得优异成绩。 资源中不仅包含了基础的考试资料,还特别加入了考试技巧讲解和备考策略分析。学生可以通过这些资源了解不同题型的解题方法和思路,学会如何在有限的时间内高效答题。此外,还有针对弱项科目和难点的专项训练,帮助学生攻克学习瓶颈。 为了确保资源的时效性和准确性,我们会定期更新考试资料和模拟试题,及时反映最新的考试动态和趋势。同时,也提供了在线交流平台,方便学生之间互相讨论、分享学习心得。 项目源码示例(简化版,Python) 以下是一个简单的Python脚本示例,用于生成包含选择题和答案的模拟试题: python import random # 定义选择题题库 questions = [ {"question": "Python的创始人是谁?", "options": ["A. 林纳斯·托瓦兹", "B. 巴纳姆", "C. 比尔·盖茨", "D.

  • 基于Django的食堂点餐系统

    基于 MySQL+Django 实现校园食堂点餐系统。 主要环境: PowerDesigner MySQL Workbench 8.0 CE Python 3.8 Django 3.2.8 BootStrap 3.3.7 Django-simpleui

Global site tag (gtag.js) - Google Analytics