MongoDB高级应用优化分析.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MongoDB高级应用优化分析

MongoDB高级应用优化分析关于本文档主 题MongoDB高级应用优化分析说  明将理论中的MongoDB提升到应用的层面,结合实际的运行案例进行分析说明适用对象MongoDB开发人员,现场运维人员,MongoDB管理人员修订历史版本章节类型日期作者说明V1.0全部C2014-04-04创建说明:类型-创建(C)、修改(U)、删除(D)、增加(A);评审记录 角色签名日期说明目 录1前言- 1 -1.1目的- 1 -1.2范围- 1 -1.3参考文档- 1 -2MongoDB概念理解- 2 -2.1副本集(replica set)- 2 -2.1.1概念- 2 -2.1.2同步机制- 2 -2.1.3读写分离- 3 -2.2分片(sharding)- 3 -2.2.1概念- 3 -2.2.2分片操作- 4 -2.2.3工作原理- 6 -2.3分片与副本集的关系- 8 -2.4主分片VS主副本- 8 -2.5分片机制的实现- 9 -2.6分片与chunk的关系- 9 -2.7大集中云存储部署模式- 10 -3MongoDB架构图分享- 11 -3.1MongoDB数据文件内部结构- 12 -3.2MongoDB中实现事务- 13 -3.3MongoDB数据同步- 14 -3.4MongoDB分片机制- 15 -3.5MongoDB服务器角色- 16 -4MapReduce简介- 17 -4.1MapReduce命令格式- 17 -4.2MapReduce执行步骤- 18 -5MongoDB热升级- 18 -5.1MongoDB版本更新- 19 -5.2复制集升级- 19 -5.2.1查看复制集状态- 20 -5.2.2从复制集升级流程- 20 -5.2.3主复制集升级操作流程- 21 -5.3配置服务升级- 22 -5.4路由服务升级- 23 -6MongoDB数据备份- 24 -6.1冷备份- 24 -6.2mongodump/mongorestor- 26 -6.3mongoexport/mongoimport- 28 -6.4修复压缩- 28 -6.5读扩展备份机制- 29 -6.5.1Master-Slave- 29 -6.5.2Replica Sets- 29 -6.6增量热备份- 34 -前言作为一款还在不断完善的作品,MongoDB还有很长的路要走,但它已经成功的支撑了成百上千的应用程序,允在大大小小的数据库集群之上,而且每天都在进步。MongoDB每天都能为不少开发者带来惊喜,甚至是幸福。目的随着MongoDB的广泛应用,越来越多的行业开始深入使用NoSql,其中MongoDB占据了绝大多数,MongoDB的高性能读写以及水平扩展和高可用性,深受企业的关注。在越来越多的用户开始使用MongoDB后,MongoDB也爆发出了越来越多的问题。那么本文将会针对诸如如何读写数据,什么是索引,如何以及为什么要建立副本集等进行讲解。范围本文将详细分析讨论MongoDB的架构设计以及优化分析的方向等。参考文档文档名说明MongoDB管理与开发精要人民邮电出版社MongoDB权威指南人民邮电出版社深入学习MongoDB人民邮电出版社MongoDB概念理解副本集(replica set)概念副本集相对于单台服务器、一个mongod服务器进程而言的。创建一个副本集后就可以使用复制功能,使用复制则可以将数据副本保存到多台服务器上。一个副本集可以存在于一台物理机器上,也可以存在于多台物理机器上,但是从副本集的存在意义考虑,当一个副本集存在于一台物理机器上时,则失去了故障转移、数据安全的意义。副本集是一组服务器,其中一个主服务器,用于处理客户端请求;还允许存在多个副本服务器,用于实时同步保存主服务器的数据副本。如果主服务器崩溃,备份服务器会自动将其中一个成员升级为新的主服务器。同步机制图 21副本集上图2-1为一个副本集的结构图,副本集内含有集合C1、C2,数据9999条,此时主节点A、副节点B、副节点C所拥有的数据一致。当在主节点执行集合C1的插入操作后,主节点C1集合立可以查询到1万条数据,等待副节点同步数据完成后,也可以通过副本集进行查询。即,副本集的数据源永远依赖于主节点的执行日志。(此时由于未进行分片,所以对于副本集而言也不存在块的概念)副本同步,该过程可以发生在主从之间,也可以发生在从与从之间。图 22副本集内主副节点的同步机制红色箭头表示写操作写到 Primary 上,然后异步同步到多个 Secondary 上 蓝色箭头表示读操作可以从 Primary 或 Secondary 任意一个上读 各个 Primary 与 Secondary 之间一直保持心跳同步检测,用于判断 Replica Sets 的状态 读写分离读写

文档评论(0)

有一二三 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档