RANGE分片配置及测试
以范围为基础的分片
Sharded Cluster支持将单个集合的数据分散存储在多shard上,用户可以指定根据集合内文档的某个字段即shard key来进行范围分片(range sharding)。
对于基于范围的分片,MongoDB按照片键的范围把数据分成不同部分。
假设有一个数字的片键:想象一个从负无穷到正无穷的直线,每一个片键的值都在直线上画了一个点。MongoDB把这条直线划分为更短的不重叠的片段,并称之为数据块,每个数据块包含了片键在一定范围内的数据。在使用片键做范围划分的系统中,拥有”相近”片键的文档很可能存储在同一个数据块中,因此也会存储在同一个分片中。
测试
激活数据库分片功能
mongo --port=38017 admin
设置test库为shard分片
db.runCommand( { enablesharding : "test" }
指定分片键对集合分片
### 创建索引
use test
db.vast.ensureIndex( { id: 1 } ) #开启vast表索引