Sharding
Sharding
Sharding(分片集群)该模式适合处理大量数据,它将数据分开存储,不同服务器保存不同的数据,所有服务器数据的总和为整个数据集。
内部结构
- 分片服务(Shard Server)
- 配置服务(Config Server)
- 路由服务(Route Server)
配置服务启动时会读取集群分片配置
路由服务启动时会加载分片配置,也是和客户端交互的接口。
注意事项:
为了保证每个服务的高可用,需要服务配置副本集群,这里仅以单节点为例。
分片策略
MongoDB通过分片策略,决定数据存储的分片服务器。mongodb有两种分片策略,根据集合字段来指定。
- 范围指定 :将指定字段的数据按照范围进行划分,根据范围获取分片服务器
- 数据Hash :指定字段的数据进行Hash计算,获取存储的分片服务器
策略需要根据业务场景确定,其中数据Hash较为常用。