MongoDB架构——sharding分片

这是一种将海量数据水平扩展的数据库集群系统,数据分表存储在sharding各个节点上,用户通过简单的配置可以完成一个分布式MongoDB集群。MongoDB的数据分块称为chunk,每个chunk都是Collection中一段连续的数据记录,最大尺寸200MB,超出则生成新的数据块。

一.MongoDB中的自动分片

分片就是将集合分成多个小块。在分片前需要运行一个路由进程,名为mongos。这个进程知道知道数据具体的存放分片所以需要连接mongos来发送请求

二.片键

设置分片时,需要从集合中选择一个键,作为拆分数据的依据,称为片键。

三.建立分片

建立一个片,需要以下3种角色:

  • 1.Shard Server

是存储实际数据的分片,每个Shard可以是一个MongoDB实例,也可以是一组复制集。建议是复制集,这样可以很好实现auto-failover

  • 2.Config Server

存储所有Shard节点的配置信息、每个Chunk的Shard Key范围、Chunk在各个Shard的分布情况、该集群中所有DB和集合的sharding配置信息

  • 3.mongos

客户端接入Shard的一个前端路由,mongos回去访问Config Servers需要到哪个Shard上操作,然后再连接Shard,最后返回给客户端。

1.启动Config Server配置服务器
首先要启动配置服务器和mongos。其中配置服务器必须先启动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值