数据分片的三种方式:哈希、一致性哈希、按照数据范围分片

数据分片就是按照一定的规则,将数据集划分成相互独立、正交的数据子集,然后将数据子集分布到不同的节点上。通过设计合理的数据分片规则,可将系统中的数据分布在不同的物理数据库中,达到提升应用系统数据处理速度的目的。

三种常用的数据分片方式:

1. 哈希分片

2. 一致性哈希分片(Consistent Hash)

3. 按照数据范围分片(Range Based)

数据分片的应用场景:

1. 数据库扩展

2. 分布式缓存

对集群部署多个缓存节点,提高缓存的处理能力。采用缓存分片方法,把缓存的数据拆分到多个节点分别存储,减轻单个缓存节点的访问压力,达到分流效果。

3. 分布式文件系统

4. 分布式消息队列

5. 日志处理


 哈希分片
 

哈希分片:hash(key)%服务器数量

按照数据的某一特征key来计算哈希值,通过对key进行hash运算,将哈希值与系统中的节点建立映射关系,使得数据分布到不同的节点上。通常是用哈希值与服务器数量进行取余,余数为key所映射的服务器索引,余数相同的放在同一个节点上。

假设有3台服务器(服务器编号为0、1、2),key经过哈希运算得到的值为10,执行hash(key)%3,结果为1,表示该key映射到服务器1上。

哈希分片的优点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奔向理想的星辰大海

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值