1.主从mongodb 模式 类似,MySQL的主从配置  参照:https://blog.csdn.net/liusong0605/article/details/11551699

mongoDB有一个主要特性就是复制,有多种复制形式,其中,主从复制是比较常用的一种。

主从复制的工作原理:首先要有两个或更多的服务器,其中一个是主节点,负责处理客户端的请求,其他的都是从节点,负责映射主节点的数据。主节点记录在其上执行的所有操作,从节点定期轮询主节点获得的这些操作,然后执行这些操作。由于从节点和主节点执行了相同的操作,从节点就能保持与主节点的数据同步。

简单概括就是:主节点完成数据写入操作,从节点完成数据复制、为读取提供数据。这样实现的好处:1.实现读写分离、降低了主节点的压力。2.做了数据备份,增强了安全性。 还有一个缺点:主节点宕机,系统不可用。

搭建mongodb主从复制比较简单:

主节点:bin>mongod --dbpath=主节点的数据库路径  --port=27017 --master

从节点:bin>mongod --dbpath=从节点的数据库路径  --port=27007 --slave --source=主节点ip:主节点端口号

主节点的数据库安装在mongodb\db中:

2. 自动分片模式 :https://blog.csdn.net/liusong0605/article/details/11556311

分片,是指将数据拆分,将其分散到不同的机器上。这样的好处就是,不需要功能强大的大型计算机也可以存储更多的数据,处理更大的负载。
      mongoDB的分片,是将collection的数据进行分割,然后将不同的部分分别存储到不同的机器上。当collection所占空间过大时,我们需要增加一台新的机器,分片会自动将collection的数据分发到新的机器上。

mongoDB分片的原理:

mongos:客户端只需要对mongos进行操作就行了,至于如何进行分片,不需要客户端参与,由mongos和config来完成。

mongod:一个普通的数据库实例,如果不分片的话,我们直接连接的就是mongod。

实例演示:

首先准备四个mongodb服务器,F:\mongos\     F:\mongodb1    F:\mongodb2   F:\mongodbConfig

Mongodb 分片原理的更多相关文章

  1. MongoDB分片原理篇

    MongoDB分片 为什么需要Sharded cluster? MongoDB目前3大核心优势:『灵活模式』+ 『高可用性』 + 『可扩展性』,通过json文档来实现灵活模式,通过复制集来保证高可用, ...

  2. MongoDB 分片的原理、搭建、应用

    一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载.基本思想就是将集合切成小块,这 ...

  3. MongoDB 分片的原理、搭建、应用 !

    MongoDB 分片的原理.搭建.应用   一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处 ...

  4. MongoDB 分片的原理、搭建、应用 (转)

    一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载.基本思想就是将集合切成小块,这 ...

  5. MongoDB分片技术原理和高可用集群配置方案

    一.Sharding分片技术 1.分片概述 当数据量比较大的时候,我们需要把数分片运行在不同的机器中,以降低CPU.内存和Io的压力,Sharding就是数据库分片技术. MongoDB分片技术类似M ...

  6. MongoDB分片集群原理、搭建及测试详解

    随着技术的发展,目前数据库系统对于海量数据的存储和高效访问海量数据要求越来越高,MongoDB分片机制就是为了解决海量数据的存储和高效海量数据访问而生. MongoDB分片集群由mongos路由进程( ...

  7. 008.MongoDB分片群集概念及原理

    一 MongoDB分片介绍 1.1 分片 Mongodb另一种集群,就是分片技术,可以满足MongoDB数据量大量增长的需求. 当MongoDB存储海量的数据时,一台机器可能不足以存储数据,也可能不足 ...

  8. MongoDB分片集群机制及原理

    1. MongoDB常见的部署架构 * 单机版 * 复制集 * 分片集群 2. 为什么要使用分片集群 * 数据容量日益增大,访问性能日渐下降,怎么破? * 新品上线异常火爆,如何支撑更多用户并发? * ...

  9. MongoDB 分片管理(不定时更新)

    背景: 通过上一篇的 MongoDB 分片的原理.搭建.应用 大致了解了MongoDB分片的安装和一些基本的使用情况,现在来说明下如何管理和优化MongoDB分片的使用. 知识点: 1) 分片的配置和 ...

随机推荐

  1. 使用 NuGet 包管理器在 Visual Studio 中安装和管理包

    https://docs.microsoft.com/zh-cn/nuget/consume-packages/install-use-packages-visual-studio 通过 Window ...

  2. 在Linux服务器上安装Python3.7

    我的Linux版本是CentOS 6,自带2.7版本的Python.源码安装和系统中默认存在的Python不冲突. 1.在Python官网下载源码包,进入官网https://www.python.or ...

  3. 3.创建springboot程序

    有两种方式创建springboot项目 第一种方式:在官网上创建(基本上不用) Spring官方提供了非常方便的工具 Spring Initializr:https://start.spring.io ...

  4. vue-cli 3 脚手架搭建(create)

    地址:https://cli.vuejs.org/zh/guide/ 安装步骤: 提示:node 版本要 8.9+ 两种方式: (1) npm install -g @vue/cli (2) yarn ...

  5. Whctf - OLDDRIVER - Writeup

    Whctf - OLDDRIVER - Writeup 转载请标明出处http://www.cnblogs.com/WangAoBo/p/7541536.html 题目: 分析: 给了10组RSA的加 ...

  6. 在springboot项目中引入quartz任务调度器。

    quartz是一个非常强大的任务调度器.我们可能使用它来管理我们的项目,常见的是做业绩统计等等.当然它的功能远不止这些.我们在这里不介绍quartz的原理,下面讲讲如何在springboot中使用qu ...

  7. 【转载】Java泛型(二)

    转自:http://www.cnblogs.com/lwbqqyumidi/p/3837629.html 一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 public ...

  8. Redis如果内存满了怎么办?

    Redis占用内存大小 我们知道Redis是基于内存的key-value数据库,因为系统的内存大小有限,所以我们在使用Redis的时候可以配置Redis能使用的最大的内存大小. 1.通过配置文件配置 ...

  9. 8.10-Day1T2圈(circle)

    圈(circle) 题目大意 一开始看这道题,觉得有点像备用钥匙那道题,需要离散化, 把一个球的两个点分开看... 但是..其中的规律我推不出来 (不是很难,只是蒟蒻好久都没有自己独立思考了) 题解 ...

  10. Mac系统升级后git没法使用的问题

    今天更新了mac系统(Catalina)发现之前的项目没法提交,然后大概查了一下啊mac更新方面的问题 mac每次更新时系统就会卸载xcode 在终端输入  xcode-select --instal ...