- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分布式哈希表及chord;一致性哈希(Consistent Hash) ;一致性哈希(Consistent Hash) ;一致性哈希(Consistent Hash) ;一致性哈希(Consistent Hash) ;例:假定有一个分布式WEB缓存系统,那么其数据缓存的算法可以有两种。;2、一致性哈希(Consistent Hashing)我们采用了一种新的方式来解决问题,处理服务器的选择不再仅仅依赖key的hash本身而是将服务实例(节点)的配置也进行hash运算。
1)首先求出每个服务节点的hash,并将其配置到一个0~232的圆环(continuum)区间上。
2)其次使用同样的方法求出所需要存储的key的hash,也将其配置到这个圆环(continuum)上。
3)然后从数据映射到的位置开始顺时针查找,将数据保存到找到的第一个服务节点上。如果超过232仍然找不到服务节点,就会保存到第一个服务节点上。 ;一致性哈希(Consistent Hash) ;一致性哈希(Consistent Hash) ; 为了维护上述路由信息,在节点加入/退出系统时,相邻的节点必须及时更新路由信息。这就要求节点不仅存储直接相连的下行节点位置信息,还要知道一定深度 (n跳)的间接下行节点信息,并且动态地维护节点列表。当节点退出系统时,它的上行节点将尝试直接连接到最近的下行节点,连接成功后,从新的下行节点获得下行节点列表并更新自身的节点列表。同样的,当新的节点加入到系统中时,首先根据自身的ID找到下行节点并获得下行节点列表,然后要求上行节点修改其下行节点列表,这样就恢复了路由关系。 ;分布式哈希表(Distributed Hash Table,DHT);DHT 的主要思想:;1.将内容索引抽象为K, V对:
K是内容关键字的Hash摘要
K = Hash(key)
V是存放内容的实际位置,例如节点IP地址等
2. 所有的K, V对组成一张大的Hash表,因此该表存储了所有内容的信息
3.每个节点都随机生成一个标识(ID),把Hash表分割成许多小块,按特定规则(即K和节点ID之间的映射关系)分布到网络中去,节点按这个规则在应用层上形成一个结构化的重叠网络
4.给定查询内容的K值,可以根据K和节点ID之间的映射关系在重叠网络上找到相应的V值,从而获得存储文件的节点IP地址;DHT 的主要思想:;;插入(K1,V1);定位(Locating)
节点ID和其存放的K, V对中的K存在着映射关系,因此可以由K获得存放该K, V对的节点ID
路由(Routing)
在重叠网上根据节点ID进行路由,将查询消息最终发送到目的节点。每个节点需要有到其邻近节点的路由信息,包括节点ID、IP等
网络拓扑
拓扑结构由节点ID和其存放的K, V对中的K之间的映射关系决定
拓扑动态变化,需要处理节点加入/退出/失效的情况;1. 哈希算法
Chord使用一致性哈希作为哈希算法。在一致性哈希协议中并没有定义具体的算法,在Chord协议中将其规定为SHA-1。
2. 路由算法
Chord在一致性哈希的基础上提供了优化的路由算法:
经过Chord的优化后,查询需要的跳数由O(N)减少到O(log(N))。这样即使在大规模的P2P网络中,查询的跳数也较少。
Chord还考虑到多个节点同时加入系统的情况并对节点加入/退出算法作了优化。 ;采用环形拓扑(Chord环)
应用程序接口
Insert(K, V)
将K, V对存放到节点ID为Successor(K)上
Lookup(K)
根据K查询相应的V
Update(K, new_V)
根据K更新相应的V
Join(NID)
节点加入
Leave()
节点主动退出;Chord:Hash表分布规则;Chord:简单查询过程;Chord:查询表(Finger Table) ;Chord:基于查找表的扩展查找过程;Churn由节点的加入、退出或者失效所引起。
每个节点都周期性地运行??测协议来检测新加入节点或退出/失效节点,从而更新自己的指针表和指向后继节点的指针。;新节点N事先知道某个或者某些结点,并且通过这些节点初始化自己的指针表。也就是说,新节点N将要求已知的系统中某节点为它查找指针表中的各个表项。
在其它节点运行探测协议后,新节点N将被反映到相关节点的指针表和后继节点指针中。
新结点N的第一个后继结点将其维护的小于N节点的ID的所有K交给该节点维护。;当Chord中某个结点M退出/失效时,所有在指针表中包含该结点的结点将相应指针指向大于M结点ID的第一个有效结点即节点M的后继节点。
为了保证节点M的退出/失效不影响系统中正在进行的查询过程,每个Chord节点都维护一张包括r个最近后继节点的后继列表。
您可能关注的文档
最近下载
- 天津大学测控电路试卷.doc VIP
- 西 藏图考 清 黄沛翘(国立中央图书馆典藏).pdf
- 商标使用许可备案提前终止协议书8篇.docx VIP
- 2025年成都百万职工技能大赛(快递员)备赛试题库(含答案).docx
- 材料概论-第二章课件.pptx VIP
- 工业机器人编程与操作(FANUC)配套课件.ppt
- 第一单元 快乐的课堂 1~5 数的认识和加减法(单元测试基础卷)数学青岛版一年级上册(A3).pdf
- 2025广西公需答案01.pdf
- (高清版)DBJ50∕T-396-2021 山地城市地下工程防渗堵漏技术标准.pdf VIP
- Q TZW 22-2016_烧烤工具 企业标准.pdf VIP
文档评论(0)