`
purpen
  • 浏览: 792863 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mongodb 性能调优几点事项

阅读更多

mongoDB简单优化示例:
1. 设计合理的数据结构,应用架构以及业务逻辑.
2. 合理使用索引
    如,当需要返回的记录数比扫描的记录数少得多时,结合collection的读写场景,考虑是否使用索引。
3. 限制输出结果
    当需要返回的结果集非常大时,如无必要,考虑使用limit限制输出.
4. 仅仅选择需要输出的列
    返回结果应该只包含需要返回的列,而不是所有列.这样的话可以减少返回的字节数,节约带宽.
5. $inc使用
    当更新的记录中存在需要增加或减少的字段时,考虑使用$inc,效率比去除记录,更新记录再插回去会高很多.
> db.test.insert({"a":1})
> db.test.update({"a" : 1},{"$inc" : {"a" : 1}})
> db.test.find()
{ "_id" : ObjectId("4d297bfff59946c5070b2504"), "a" : 2 }
> db.test.update({"a" : 2},{"$inc" : {"a" : -1}})
> db.test.find()  
{ "_id" : ObjectId("4d297bfff59946c5070b2504"), "a" : 1 }

6. capped collection合理使用
读写效率都还可以,并且严格$natural.

7. 服务端代码合理使用
使用服务端代码可以减少网络消耗(类似传统数据库的函数和存储过程),提高效率.

使用profile分析:
mongoDB的profile是分析数据库热点,优化数据库的非常好用的功能

优化count()
count()和offset()都是数据库杀手,建索引是很有必要的(尽量减少scan)。

explain()和hint()
对于profile得到的执行代码,使用explain分析,必要时可以使用hint()强制索引或全表扫描.

分享到:
评论

相关推荐

    mongodb性能调优执行计划分析

    MongoDB性能调优是数据库管理中一个非常关键的方面,尤其在面对大量的数据和复杂查询的时候。对执行计划的理解和分析是优化查询性能的关键步骤。在深入探讨之前,我们需要对一些基础概念有一个清晰的理解。 首先,...

    mongo性能调优

    本文将基于提供的标题、描述和部分内容,深入探讨MongoDB性能调优的关键知识点。 #### 一、理解MongoDB性能瓶颈 在进行MongoDB性能调优之前,首先需要理解可能遇到的性能瓶颈。这些瓶颈通常可以分为以下几个方面:...

    MongoDB Days 2015 深圳 PPT 共享

    8. **性能调优**: 除了基本的查询优化,还包括内存管理、磁盘I/O优化、数据模型设计等方面的知识,这些都是确保MongoDB高效运行的重要因素。 9. **安全与认证**: MongoDB的安全特性包括用户认证、访问控制、SSL加密...

    Mongodb连接池JAVA

    在使用MongoDB连接池时,开发者需要注意以下几点: 1. **初始化连接池**:在应用启动时,需要初始化连接池,设置好相关参数,如最大连接数、最小连接数、空闲连接超时等。 2. **获取和释放连接**:应用在需要访问...

    mongodb 4.0.0社区版安装包

    在安装MongoDB 4.0.0社区版时,用户需要注意以下几点: - 首先,确保你的系统满足MongoDB的硬件和软件需求。 - 下载并解压提供的安装包到一个合适的目录。 - 安装MongoDB服务,配置数据目录和日志文件路径。 - 设置...

    MongoDB监控与runCommand命令.pdf

    通过熟练使用 `mongostat` 和 `mongotop`,管理员可以及时发现潜在问题,进行性能调优,确保数据库高效运行。此外,MongoDB 还提供了其他监控工具,如 `mongotop` 和 `db.serverStatus()` 命令,以及通过 MongoDB ...

    Mongodb使用手册

    9. **性能调优**:提供性能监控、日志分析、硬件选择和配置建议,帮助优化MongoDB实例的运行效率。 10. **应用程序接口API**:探讨MongoDB的驱动程序,包括MongoDB的官方驱动和社区驱动,以及如何在各种编程语言中...

    MongoDB简介与实践.pdf

    从提供的文件内容中,我们可以提取出以下关于MongoDB的知识点: 1. 关于NoSQL的知识点: NoSQL数据库是区别于传统关系型数据库的数据存储方式,它主要面对数据高并发性的实时读取与写入、海量数据存储和智能计算与...

    MongoDB学习MongoDB学习MongoDB学习

    在MongoDB的学习过程中,以下几个核心知识点至关重要: 1. **基本原理**:MongoDB采用键值对的形式存储数据,每个文档都由键值对组成,键是字符串,值可以是多种类型,包括其他文档、数组等。其数据模型灵活,适合...

    mongodb-linux-x86 3.2.0

    - **性能调优**:通过调整硬件资源分配、索引策略、查询优化等手段,提高系统性能。 总的来说,MongoDB 3.2.0在Linux环境下的部署和使用是一项涉及多方面知识的工作,包括数据库管理、系统配置、性能优化以及安全...

    MongoDB-manual

    - **性能调优**:提供了一些提高应用性能的建议和技巧。 #### 关于mongo Shell - **命令行工具**:介绍了mongo Shell的使用方法及其功能。 - **常用命令**:列出了在mongo Shell中常用的命令及其作用。 #### 并发...

    mongodb学习

    10. **性能调优**:MongoDB的性能优化涉及硬件选择、内存配置、日志管理等多个方面。理解性能瓶颈并进行有效调整,可以充分发挥MongoDB的性能潜力。 在提供的文件列表中,"GNU-AGPL-3.0"可能是指MongoDB的开源许可...

    mongodb-linux-x86_64-amazon-5.0.6

    2. 监控与性能调优:监控MongoDB的性能指标,如内存使用、I/O操作、网络带宽等,根据情况调整配置。 3. 安全性:设置访问控制,使用认证和授权确保数据安全。启用SSL/TLS加密以保护数据传输。 4. 扩展性:当单个实例...

    MongoDB权威指南中文版.pdf

    10. 性能优化:根据MongoDB的特性提供性能调优的策略和技巧,帮助开发者了解如何针对不同的工作负载和需求对数据库进行优化。 《MongoDB权威指南中文版》作为一本综合性的指南,覆盖了从基础操作到高级管理、优化的...

    mongodb1.8

    在MongoDB 1.8中,我们可以看到以下几个核心知识点: 1. **分布式架构**:MongoDB是分布式数据库,支持水平扩展,通过添加更多的服务器来增加存储容量和处理能力。1.8版本可能包含对集群管理、复制集和分片的改进,...

    MongoDB权威指南

    在这一章节中,读者将学会如何优化MongoDB性能,提升系统处理大数据的能力。 管理MongoDB是任何数据库管理员必须掌握的技能。在“管理”章节中,作者将详细介绍各种管理任务,比如监控、备份、修复以及数据库维护。...

    数据库 mongodb linux v6.0.1

    11. **监控与性能调优**:MongoDB提供了一系列的监控工具,如`mongostat`和`mongotop`,用于实时查看数据库的运行状态。根据监控结果,可以调整内存分配、磁盘I/O、网络设置等,优化数据库性能。 12. **备份与恢复*...

    mongodb权威指南

    不过,可以肯定的是,一本权威指南会涵盖上述的许多知识点,并且会提供大量的实例、最佳实践、架构设计以及性能调优等方面的深入信息。对于希望全面掌握MongoDB的读者来说,这样的指南无疑是宝贵的资源。

Global site tag (gtag.js) - Google Analytics