集合点与一致性哈希
Rendezvous vs consistent hashing
我读了on Wikipedia:
Unlike consistent hashing, HRW (Highest Random Weight, aka Rendezvous Hashing) requires no precomputing or storage of tokens.
为什么?
我的理解是:
在一致性哈希中,一个人将对象和站点独立地(即h(Oi)
和h(Sj)
)哈希到单位圆,然后对于给定的对象,它找到最近的散列 space.
中的站点
在 HRW(Rendezvous hashing)中,同时对对象和站点进行哈希,即 h(Oi, Sj)
,然后选择最高的哈希结果来决定对象的目标站点。
所以,如果有的话,在我看来,在一致的散列中,一个人 可以选择 来预计算和预存储 h(Sj)
s 但你不是需要这样做。换句话说,一致性哈希提供了这种灵活性,而 HRW 则没有。
我错了吗?如果是,为什么?
这是来自同一 link 的 HRW 的参考描述:
集合散列的圆圈解释是错误的。
集合哈希:
Hash(object + Site)
:结果最高的站点(最高随机权重 (HRW) 哈希)开始存储对象。
如果您删除了一个站点,对于该站点上的每个对象,对剩下的每个站点重做 Hash(object + Site) 操作以找到结果最高的站点。
一致性哈希:
给每个Site一个Site-key的数量(Site-key的数量越大,对象的重新划分就越均匀,你通过:Hash(site + number)
生成它们)。把它们放在一个圆圈上。(所有这些都是可以预先计算的部分)。
存储一个object,Hash(Object)
得到一个object-key,放在一个圆圈上,顺时针找到最近的site-key。具有此站点密钥的站点将存储该对象
如果您删除一个站点,您将在圆圈上删除该站点拥有的站点密钥。对于存储在该站点上的每个对象,您在圆圈上再次顺时针方向找到最近的站点密钥。
你是对的。
我们可以预先计算和预先存储 h(Sj)
的事实对于一致性哈希来说是一个优势。
维基百科指出,Rendezvous 哈希的优势在于它在概念上更易于理解和实现(尽管我个人不同意)。
它还提到了另一个优势:
Rendezvous hashing also has the great advantage that it provides
simple solutions to other important problems, such as distributed
k-agreement.
我读了on Wikipedia:
Unlike consistent hashing, HRW (Highest Random Weight, aka Rendezvous Hashing) requires no precomputing or storage of tokens.
为什么?
我的理解是:
在一致性哈希中,一个人将对象和站点独立地(即
中的站点h(Oi)
和h(Sj)
)哈希到单位圆,然后对于给定的对象,它找到最近的散列 space.在 HRW(Rendezvous hashing)中,同时对对象和站点进行哈希,即
h(Oi, Sj)
,然后选择最高的哈希结果来决定对象的目标站点。
所以,如果有的话,在我看来,在一致的散列中,一个人 可以选择 来预计算和预存储 h(Sj)
s 但你不是需要这样做。换句话说,一致性哈希提供了这种灵活性,而 HRW 则没有。
我错了吗?如果是,为什么?
这是来自同一 link 的 HRW 的参考描述:
集合散列的圆圈解释是错误的。
集合哈希:
Hash(object + Site)
:结果最高的站点(最高随机权重 (HRW) 哈希)开始存储对象。
如果您删除了一个站点,对于该站点上的每个对象,对剩下的每个站点重做 Hash(object + Site) 操作以找到结果最高的站点。
一致性哈希:
给每个Site一个Site-key的数量(Site-key的数量越大,对象的重新划分就越均匀,你通过:Hash(site + number)
生成它们)。把它们放在一个圆圈上。(所有这些都是可以预先计算的部分)。
存储一个object,Hash(Object)
得到一个object-key,放在一个圆圈上,顺时针找到最近的site-key。具有此站点密钥的站点将存储该对象
如果您删除一个站点,您将在圆圈上删除该站点拥有的站点密钥。对于存储在该站点上的每个对象,您在圆圈上再次顺时针方向找到最近的站点密钥。
你是对的。
我们可以预先计算和预先存储 h(Sj)
的事实对于一致性哈希来说是一个优势。
维基百科指出,Rendezvous 哈希的优势在于它在概念上更易于理解和实现(尽管我个人不同意)。
它还提到了另一个优势:
Rendezvous hashing also has the great advantage that it provides simple solutions to other important problems, such as distributed k-agreement.