一致性Hash Vs 哈希槽

本文探讨了一致性哈希与哈希槽在数据分配和扩容时的优缺点。一致性哈希在节点增减时只需重定位部分数据,而哈希槽通过灵活的映射表实现更便捷的扩展性。哈希槽在数据迁移时操作明确,实现简单,提供更高的可配置性。

一:概述

当数据量增长到一定程度,往往通过存储节点扩容,来分担数据。当加入新节点后,数据在分配时,如何保证数据既能正确读写路由,又能让数据迁移变得简单快捷?大家会一口同声的说道采用一致性哈希方案。但是,生产与实践中,redis最新版本已经放弃对一致性哈希的应用,提出了哈希槽(Hashslot)的概念,以下将通过两者的分析与对比,领略一下哈希槽的魅力。(最新信息请关注微信公众号: 白白家族)


 

二:分析与对比

我们先看看 一致性哈希 和 哈希槽的实现原理,才能更深入的了解。

2.1 一致性哈希算法(Consistent Hashing)

1)声明环空间:

将数组[0,1,2,… 2^32-1]形成首尾相连的环形结构,按顺时针方向组织,其中0和2^32-1在零点中方向重合,如下图圆环所示

一致性Hash的替代品?哈希槽的时代来临了

 

 

2)分配服务节点

将服务器的ip或主机名作为关键字进行哈希取值,映射到数组圆环上,例如hash(server1)/2^32 = 1000, 例如hash(server3) /2^32= 50000, hash(server2) /2^32 = 900000, 分别映射到 数组第1000/50000/900000的位置上

一致性Hash的替代品?哈希槽的时代来临了

 

 </

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值