一致哈希中的不可用节点

时间:2018-07-26 23:04:23

标签: database nosql distributed-computing consistent-hashing

从我读过的所有内容来看,在一致哈希中,如果一个节点崩溃,则该节点处理的键将重新映射到哈希环中的相邻节点。从概念上讲,这对我来说很有意义。

我不了解的是,这对于分布式数据库在实践中将如何工作。如果节点崩溃,如何将数据移动到另一个节点?是否假设有可用的备份/备用群集?还是可以从中复制冗余节点?

1 个答案:

答案 0 :(得分:1)

是的。从集群中的其他节点复制数据。如果未复制数据,则无法恢复数据。

一致性哈希为我们提供了一个分配了密钥的节点。如何识别在其上复制密钥的其他节点?

答案是复制策略建立在一致性哈希之上。首先,使用一致的哈希识别密钥所属的节点。其次,系统使用另一种算法复制数据。策略之一是,系统将数据写入到按顺时针方向紧随其后的节点,再写入一致性哈希环中的当前节点。例如,您可以找到其他一些复制策略here