mongoDB 架构


mongoDB 架构

           

                 

******************

单机

                

                            

只有一个数据节点,当节点发生故障,服务不可用(常用于开发测试环境)

             

                

******************

副本集

                 

                    

                    

      

主节点:负责写入数据,与客户端进行读写交互

从节点:同步主节点的数据,并可供客户端读取数据,实现读写分离

仲裁节点:故障转移投票阶段进行辅助投票(只投票不存储数据)

         

主从数据复制

从节点写入数据会在oplog中记录,

从节点监控主节点的oplog,在本地数据库写入oplog,并执行写入过程

主节点记录从节点的同步状态,当落后太多时,会阻塞等待,或者根据配置,等待足够数量的从节点同步完成

          

故障转移

副本集运行时,各节点会周期性的会进行心跳检测,

当检测到从节点不能正常工作时,直接将其下线;

当检测到主节点不能正常工作时,会触发故障转移;

各节点投票选举主节点,主节点选取后,从节点同步主节点数据

          

          

******************

分片集群

           

                    

                              

分片服务器:存储数据,用副本集形式部署,实现数据的高可用

配置服务器:存储分片的配置信息,块的元数据,数据库和集合的分片配置信息等

mongos:路由服务器,不存储任何数据,根据配置服务器存储的配置信息,将客户端的请求路由到对应的分片

             

分片策略:区间分片、hash分片、标签分片(具体详见 mongoDB 概述)

需要分片的集合根据分片策略进行分片,

当块的大小或者数据量达到限制值时,块分裂成两半(修改块的元数据信息,数据物理存储位置不变),

当不同分片服务器的快的数量相差较大时(相差8左右),触发块的迁移,使各个分片服务器上块的数量大致相等

         

             

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值