[分布式]一致性哈希


[Update 2016.9.25]
这两天写了一个简单的一致性哈希的demo.
https://github.com/exctPuzzles/exctpuzzs/tree/master/solutions/consistent_hash

一致性哈希有几个最重要的点:

  1. 环状哈希地址空间
  2. 虚拟节点(很多)
  3. 一个物理节点对应很多虚拟节点(几百个),这些虚拟节点分散在这个空间上(如何分散 - 哈希)
    3.1 虚拟结点与物理节点的对应关系如何实现(这是所谓的omap吗?)
  4. 既对数据取哈希后求模,也对虚拟节点哈希后求模,然后每个虚拟节点存着他前面直到上一个虚拟节点的这些数据

  • 环状 + 数据/节点双hash - 解决传统哈希增减机器时带来的巨大开销.(扩展性差)
    传统哈希增减机器时要更改哈希地址空间,这会导致大部分数据都需要迁移,并且对应的缓存也都将失效。

  • 虚拟节点(负载均衡)
    负载均衡,如果直接把物理机器映射到环上,那么几次增减后有可能某些机器需要承担大量数据。


  • ceph的一致性哈希算法是CRUSH
    唉,读完再更新吧........(无奈脸)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容