分布式存储系统中一致性哈希算法的研究.docVIP

分布式存储系统中一致性哈希算法的研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分布式存储系统中一致性哈希算法的研究   摘要:一致性哈希算法目前在分布式存储中应用广泛。该文对一致性哈希算法基本原理进行了分析,讨论了其在分布式存储领域的优势和不足,分析了优化策略,并对哈希函数的选择进行了分析和实验测试。   关键词:一致性哈希算法;分布式存储   中图分类号:TP393文献标识码:A文章编号:1009-3044(2011)22-5295-02   Research of Consistent Hashing in Distribute Storage System   YANG Yu-jian, LIN Bo   (78098 Troop, Chengdu 611237, China)   Abstract: The consistent hashing algorithm is used in distribute storage system at present. This paper introduced the basic principle of algorithm , discuss its Advantage and disadvantage, analyzed the tactics of optimizing. At last analyzed and test hash function.   Key words: consistent hashing; distribute storage   数据均衡分布技术是分布式存储系统技术中的一个重要分支,按照一定的策略将数据尽可能均匀分布到所有的存储节点上去,使得系统具有良好的负载均衡性能和扩展性,深入研究可靠的高性能数据均衡技术对于分布式存储系统而言,具有重要意义。   1 简单哈希算法   哈希(hash)计算是常见的数据分布技术,其通过求模运算来计算哈希值,然后据此将数据映射到存储空间中。设有由N个存储节点组成的存储空间,采用简单哈希计算将一个数据对象object映射到存储空间上的公式为:hash(object)%N。由于只是采用了简单的求模运算,使得简单哈希计算存在很多不足:   1)增删节点时,更新效率低。当系统中存储节点数量发生增加或减少时,映射公式将发生变化为hash(object)%(N±1),这将使得所有object的映射位置发生变化,整个系统数据对象的映射位置都需要重新进行计算,系统无法对外界访问进行正常响应,将导致系统处于崩溃状态。   2)平衡性差,未考虑节点性能差异。由于硬件性能的提升,新添加的节点具有更好的承载能力,如何对算法进行改进,使节点性能可以得到较好利用,也是亟待解决的一个问题。   3)单调性不足。衡量数据分布技术的一项重要指标是单调性,单调性[1]是指如果已经有一些内容通过哈希计算分派到了相应的缓冲中,当又有新的缓冲加入到系统中时,哈希的结果应能够保证原有已分配的内容可以被映射到新的缓冲中去,而不会被映射到旧的缓冲集合中的其他缓冲区。   由上述分析可知,简单地采用模运算来计算 object 的 hash 值的算法显得过于简单,存在节点冲突,且难以满足单调性要求。修改后的一致性哈希算法正是近年来提出的一个解决方案,在Amazon公司的Dynamo中得到了很好的体现。   2 一致性哈希算法的工作原理   一致性哈希算法[2-3]是当前较主流的分布式哈希表协议之一,它对简单哈希算法进行了修正,解决了热点(hot Pot)问题,它的原理分为两步,如图1所示:   首先,对存储节点的哈希值进行计算,其将存储空间抽象为一个环,将存储节点配置到环上。环上所有的节点都有一个值。   其次,对数据进行哈希计算,按顺时针方向将其映射到离其最近的节点上去。   当有节点出现故障离线时,按照算法的映射方法,受影响的仅仅为环上故障节点开始逆时针方向至下一个节点之间区间的数据对象,而这些对象本身就是映射到故障节点之上的。当有节点增加时,比如,在节点A和B之间重新添加一个节点H,受影响的也仅仅是节点H逆时针遍历直到B之间的数据对象,将这些重新映射到H上即可,因此,当有节点出现变动时,不会使得整个存储空间上的数据都进行重新映射,解决了简单哈希算法增删节点,重新映射所有数据带来的效率低下的问题。   一致性哈希算法作为分布式存储领域的一个重要算法,它基本解决了以P2P为代表的存储环境中一个关键的问题――如何在动态的网络拓扑中对数据进行分发和选择路由。在算法所构成的存储拓扑中,每个存储节点仅需维护少量相邻节点的信息,并且在节点加入/退出系统时,仅有相关的少量节点参与到拓扑的维护中,这使得一致性哈希算法成为一个具有实用意义的DHT(Distributed Hash Table,分布式哈希表)

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档