划分三个节点, 每个节点上有两个Redis(主从),将16384(固定的个数)个槽位均匀的分不到这三个节点中(每个槽位可以存多个键值对,数据越小,存的键值对就越多)
存数据时,将key做crc16(hash为数字),然后和16384进行取模,得出的值在0-16384中间,
根据得到的值找对对应的槽位,找到对应的节点, 存进去
取数据时同理
如果客户端连接的节点不是将来要存储的分片节点,分片集群会将客户端连接到真正的存储节点进行数据存储
因为每个节点都是主从结构, 当主挂了,就会实现类似于sentinel自动使用从库
MongoDBrs复制集 https://www.jianshu.com/p/a5ccc0024e5d
MongoDB Sharding Cluster 分片集群 https://www.jianshu.com/p/630b7d679e9f
网友评论