Hash与Hash一致性

本文介绍了哈希的基本概念,并深入探讨了一致性哈希算法的工作原理。一致性哈希能有效减少服务器增删时的数据迁移量,通过引入虚拟节点进一步优化负载均衡。文章详细解释了如何通过一致性哈希解决服务器故障时的数据映射问题。
摘要由CSDN通过智能技术生成
  • 什么是Hash?

    hash就是把任意长度的输入(又叫做预映射),通过散列算法,变换成固定长度的输出,该输出就是散列值。

  • 一致性hash?

    一致性哈希是一种哈希算法:在移除或添加一个结点时,它能够尽可能小地改变已存在key的映射关系。

  • 几个服务器一起工作,其中一个坏掉怎么处理?

    基本思想:使用相同的哈希算法将数据和结点都映射到环形哈希空间中。
    1.把数据映射到Hash空间;
    2.把结点映射到哈希空间:此处的结点就是服务器;
    3.把数据映射到结点(顺时针或者逆时针)。
    移除结点:
    假如nodeB出现问题,根据映射方法,这时受影响的将仅是那些沿nodeB逆时针遍历直到下一个node(假设为nodeA)之间的数据,即本来映射到nodeB上的那些数据。因此这里仅需要变动数据将其重新映射到nodeC上即可。
    虚拟结点:
    虚拟结点是实际结点在哈希空间的复制品,一个实际结点对应了若干虚拟结点,虚拟结点在哈希空间中以哈希值排列。虚拟结点的使用是为了解决分布不平衡而设计的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值