广告
返回顶部
首页 > 资讯 > 数据库 >MongoDb优化指南
  • 235
分享到

MongoDb优化指南

2024-04-02 19:04:59 235人浏览 安东尼
摘要

1、为什么选择MongoDB? 1、性能 在大数据时代中,大数据量的处理已经成了考量一个数据库最重要的原因之一。而mongoDB的一个主要目标就是尽可能的让数据库保持卓越的性能,这很大程度地决定了MonGo

1、为什么选择MongoDB?

1、性能

大数据时代中,大数据量的处理已经成了考量一个数据库最重要的原因之一。而mongoDB的一个主要目标就是尽可能的让数据库保持卓越的性能,这很大程度地决定了MonGoDB的设计。在一个以传统机械硬盘为主导的年代,硬盘很可能会成为性能的短板,而MongoDB选择了最大程度而利用内存资源用作缓存来换取卓越的性能,并且会自动选择速度最快的索引来进行查询。MongoDB尽可能精简数据库,将尽可能多的操作交给客户端,这种方式也是MongoDB能够保持卓越性能的原因之一。

2、扩展

现在互联网的数据量已经从过去的MB、GB变为了现在的TB级别,单一的数据库显然已经无法承受,扩展性成为重要的话题,然而现在的开发人员常常在选择扩展方式的时候犯了难,到底是选择横向扩展还是纵向扩展呢?
横向扩展(scale out)是以增加分区的方式将数据库拆分成不同的区块来分布到不同的机器中来,这样的优势是扩展成本低但管理困难。

纵向扩展(scale up) 纵向扩展与横向扩展不同的是他会将原本的服务器进行升级,让其拥有更强大的计算能力。这样的优势是易于管理无需考虑扩展带来的众多问题,但缺点也显而易见,那就是成本高。一台大型机的价格往往非常昂贵,并且这样的升级在数据达到极限时,可能就找不到计算能力更为强大的机器了。

而MongoDB选择的是更为经济的横向扩展,他可以很容易的将数据拆分至不同的服务器中。而且在获取数据时开发者也无需考虑多服务器带来的问题,MongoDB可以将开发者的请求自动路由到正确的服务器中,让开发者脱离横向扩展带来的弊病,更专注于程序的开发上。

3、使用

MongoDB采用的是NoSQL的设计方式,可以更加灵活的操作数据。在进行传统的RDBMS中你一定遇到过几十行甚至上百行的复杂sql语句,传统的RDBMS的SQL语句中包含着大量关联,子查询等语句,在增加复杂性的同时还让性能调优变得更加困难。MongoDB的面向文档(document-oriented)设计中采用更为灵活的文档来作为数据模型用来取代RDBMS中的行,面向文档的设计让开发人员获取数据的方式更加灵活,甚至于开发人员仅用一条语句即可查询复杂的嵌套关系,让开发人员不必为了获取数据而绞尽脑汁。

2、NoSQL对传统数据库设计思维的影响

1、预设计模式与动态模式

传统数据库设计思维中,项目的设计阶段需要对数据库表中的字段名称、字段类型、进行规定,如果尝试插入不符合设计的数据,数据库不会接受这条数据以保证数据的完整性。

--数据库字段:NAME, SONG


INSERT INTO T_INFO VALUES('John','Come Together'); --成功
INSERT INTO T_INFO VALUES('小明', 20, 'xiaoming@111.com'); --失败
您可能感兴趣的文档:

--结束END--

本文标题: MongoDb优化指南

本文链接: https://www.lsjlt.com/news/51389.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MongoDb优化指南
    1、为什么选择MongoDB? 1、性能 在大数据时代中,大数据量的处理已经成了考量一个数据库最重要的原因之一。而MongoDB的一个主要目标就是尽可能的让数据库保持卓越的性能,这很大程度地决定了Mongo...
    99+
    2022-10-18
  • Windows XP优化指南
     动手之前,首先要确保以管理员的身份登录操作系统,因为普通用户身份下好些选项是无权使用的。接下来请激活清晰字体(ClearType),ClearType能使桌面的文字看起来更加清晰易读——这对于手...
    99+
    2023-05-23
    指南 Windows XP
  • MongoDB 入门指南
    目录组件结构核心进程数据库工具数据逻辑结构数据库集合文档数据库文件命令行工具使用技巧执行脚本创建 .mongorc.js 文件定制提示信息编辑复杂变量不便使用的集合名称组件结构 核心进程 在 MongoDB 中,核心进程...
    99+
    2022-12-26
    mongodb入门教程 MongoDB基础教程 mongodb入门经典
  • MongoDB入门指南
    目录组件结构核心进程数据库工具数据逻辑结构数据库集合文档数据库文件命令行工具使用技巧执行脚本创建 .mongorc.js 文件定制提示信息编辑复杂变量不便使用的集合名称组件结构 核心...
    99+
    2022-12-26
    mongodb入门教程 MongoDB 基础教程 mongodb入门经典
  • MySQL高性能优化指南
    作者:禅与计算机程序设计艺术 1.简介 随着互联网公司网站流量的逐渐增长,数据库服务器的负载也日益增加。如何提升MySQL数据库服务器的性能、节省硬件成本、提升网站的响应速度、节省运营成本是一个重要...
    99+
    2023-10-09
    自然语言处理 人工智能 语言模型 编程实践 开发语言 架构设计
  • Android开发优化之Apk瘦身优化指南
    目录了解APK结构Android Size Analyzer移除未使用的资源启用资源缩减 (不打包)动态库打包配置总结了解APK结构 在讨论如何缩减应用的大小之前,需要了解应用...
    99+
    2022-06-07
    android开发 apk 优化 Android
  • PHP入门指南:代码优化
    PHP(Hypertext Preprocessor)是一种流行的服务器端脚本语言,被广泛应用于网站和Web应用程序的开发。由于PHP的易用性和灵活性,许多开发者都喜欢使用它来开发他们的Web应用程序。然而,为了确保PHP应用程序的性能和可...
    99+
    2023-05-20
    PHP 代码优化 入门指南
  • MongoDB介绍及开发指南
    目录 一、MongoDB介绍 二、搭建MongoDB 三、Java With MongoDB 四、Spring Session MongoDB 五、MongoDB开发规范及示例 六、MongoDB + NodeJS 详见附件:Mo...
    99+
    2021-01-18
    MongoDB介绍及开发指南
  • PHP入门指南:PHP和MongoDB
    PHP是一种广泛用于Web开发的编程语言。它的应用范围涉及从简单网页到大型Web应用程序的开发。作为一位Web开发人员,深入了解PHP将能够让您最大限度地利用它的潜力。在本篇文章中,我们将探讨如何使用PHP与MongoDB一起开发Web应用...
    99+
    2023-05-20
    PHP编程 PHP入门 MongoDB数据库
  • PHP入门指南:PHP性能优化
    PHP是一种流行的编程语言,特别适合用于构建Web应用程序。然而,随着应用程序的规模不断增大,PHP的性能也成为了一个问题。本篇文章旨在为初学者提供一些有关PHP性能优化的基础知识,帮助他们提高自己的PHP编程水平。使用最新版本的PHPPH...
    99+
    2023-05-21
    PHP 性能优化 入门指南
  • Spark性能优化指南——初级篇
    原文来我的公众号:Spark性能优化指南——初级篇 一. Spark作业原理 我们使用spark-submit提交一个Spark作业之后,这个作业就会启动一个对应的Driver进程。该进程是向集群管理器(Yarn,K8s)申请运行...
    99+
    2021-09-09
    Spark性能优化指南——初级篇
  • MongoDB聚合group的操作指南
    MongoDB 聚合 MongoDB中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果。有点类似sql语句中的 count(*)。 基本语...
    99+
    2022-11-12
  • Spark调优指南
    Spark相关问题 Spark比MR快的原因? 1) Spark的计算结果可以放入内存,支持基于内存的迭代,MR不支持。 2) Spark有DAG有向无环图,可以实现pipeline的计算模式。 3) 资源调度模式:Spark...
    99+
    2018-12-04
    Spark调优指南
  • 阿里云RDS数据库优化指南
    随着大数据时代的发展,数据库已经成为企业数据管理的重要工具。而阿里云RDS数据库作为阿里云提供的云数据库服务,其性能和可靠性已经得到了广泛的认可。然而,随着业务的发展和数据量的增加,如何有效地优化阿里云RDS数据库也成为了许多企业关注的问题...
    99+
    2023-11-20
    阿里 数据库 指南
  • Django中prefetch_related()函数优化实战指南
    目录前言使用方法*lookups 参数Prefetch对象最佳实践选择哪个函数小结总结前言 对于多对多字段(ManyToManyField)和一对多字段, 可以使用prefetch_...
    99+
    2022-11-11
  • PHP中的性能优化技术指南
    随着网站越来越复杂,PHP程序的性能问题也成为了大多数Web开发人员关注的焦点。为了满足日益增长的访问量,我们需要优化PHP应用程序的性能。下面让我们来了解一些PHP中的性能优化技术。使用缓存缓存是提高PHP应用程序性能的一个重要手段。使用...
    99+
    2023-05-21
    PHP 性能优化 技术指南
  • MongoDB日志切换(Rotate Log Files)指南
    MongoDB日志切换(Rotate Log Files)指南 MongoDB默认情况下不会自动的切换轮转日志的,这将会导致日志日渐增大,在繁忙的业务下,日志增长量非常大的。如此之大的日志文件,查...
    99+
    2022-10-18
  • Vue项目打包优化实践指南(推荐!)
    目录业务背景项目打包时间分析方法优化配置的基本思路前置操作,先通过 webpack-bundle-analyzer 查看资源树1.vue.config.js 文件中修改:produc...
    99+
    2022-11-13
  • Spark内存调优指南
    目录引言数据序列化内存调优内存管理概述确定内存消耗调整数据结构RDD序列化存储GC的调整测量GC的影响高级GC调优其他考虑因素并行度水平输入路径上的并行ListingReduce任务...
    99+
    2023-03-07
    Spark内存调优 Spark调优指南
  • mongoDB数据库索引快速入门指南
    目录MongoDB 索引1. 开始与准备数据2. 创建索引前3. 创建索引 createIndex4. 创建索引后6.唯一索引与符合索引①唯一索引②复合索引MongoDB 索引 索引...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作