哈希表分布式哈希表及chord.pptVIP

  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文档。上传文档
查看更多
习题 习题 9.5 一致性哈希(Consistent Hash) 9.5 一致性哈希(Consistent Hash) 9.5 一致性哈希(Consistent Hash) 9.5 一致性哈希(Consistent Hash) 9.5 一致性哈希(Consistent Hash) 9.5 一致性哈希(Consistent Hash) 9.5 一致性哈希(Consistent Hash) 9.5 一致性哈希(Consistent Hash) 9.6 分布式哈希表(Distributed Hash Table,DHT) 9.6 分布式哈希表(Distributed Hash Table,DHT) 9.6 分布式哈希表(Distributed Hash Table,DHT) DHT 的主要思想: 索引发布和内容定位 定位(Locating) 节点ID和其存放的K, V对中的K存在着映射关系,因此可以由K获得存放该K, V对的节点ID 路由(Routing) 在重叠网上根据节点ID进行路由,将查询消息最终发送到目的节点。每个节点需要有到其邻近节点的路由信息,包括节点ID、IP等 网络拓扑 拓扑结构由节点ID和其存放的K, V对中的K之间的映射关系决定 拓扑动态变化,需要处理节点加入/退出/失效的情况 9.7 Chord 9.7 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表分布规则 Hash节点IP地址-m位节点ID(表示为NID) Hash内容关键字-m位K(表示为KID) 节点按ID从小到大顺序排列在一个逻辑环上 K, V存储在后继节点上 Successor (K):从K开始顺时针方向距离K最近的节点 Chord:简单查询过程 每个节点仅维护其后继节点ID、IP地址等信息 查询消息通过后继节点指针在圆环上传递 直到查询消息中包含的K落在某节点ID和它的后继节点ID之间 速度太慢 O(N),N为网络中节点数 Chord:查询表(Finger Table) Chord:基于查找表的扩展查找过程 Churn由节点的加入、退出或者失效所引起。 每个节点都周期性地运行探测协议来检测新加入节点或退出/失效节点,从而更新自己的指针表和指向后继节点的指针。 新节点N事先知道某个或者某些结点,并且通过这些节点初始化自己的指针表,也就是说,新节点N将要求已知的系统中某节点为它查找指针表中的各个表项 在其它节点运行探测协议后,新节点N将被反映到相关节点的指针表和后继节点指针中 新结点N的第一个后继结点将其维护的小于N节点的ID的所有K交给该节点维护; 当Chord中某个结点M退出/失效时,所有在指针表中包含该结点的结点将相应指针指向大于M结点ID的第一个有效结点即节点M的后继节点 为了保证节点M的退出/失效不影响系统中正在进行的查询过程,每个Chord节点都维护一张包括r个最近后继节点的后继列表。如果某个节点注意到它的后继节点失效了,它就用其后继列表中第一个正常节点替换失效节点 O(LogN)逻辑跳数,但是每一逻辑跳可能跨越多个自治域,甚至是多个国家的网络 重叠网络与物理网络脱节 实际的寻路时延较大 Chord:总结 算法简单 可扩展:查询过程的通信开销和节点维护的状态随着系统总节点数增加成对数关系(O(log N)数量级) 存在拓扑失配问题 P2P重叠网 整个数据的图例: 路由算法 为了维护上述路由信息,在节点加入/退出系统时,相邻的节点必须及时更新路由信息。这就要求节点不仅存储直接相连的下行节点位置信息,还要知道一定深度 (n跳)的间接下行节点信息,并且动态地维护节点列表。当节点退出系统时,它的上行节点将尝试直接连接到最近的下行节点,连接成功后,从新的下行节点获得 下行节点列表并更新自身的节点列表。同样的,当新的节点加入到系统中时,首先根据自身的ID找到下行节点并获得下行节点列表,然后要求上行节点修改其下行 节点列表,这样就恢复了路由关系。 为了构建查询所需的路由,一致性哈希要求每个节点存储其上行节点(ID值大于自身的节点中最小的)和下行节点(ID值小于自身的节点中最大的)的位置信息 (IP地址)。当节点需要查找内容时,就可以根据内容的键值决定向上行或下行节点发起查询请求。收到查询请求的节点如果发现自己拥有被请求的目标,可以直接向发起查询请求的节点返回确认;如果发现不属于自身的范围,可以转发请求到自己的上行/下行节点。 分布式哈希表技

文档评论(0)

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

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

1亿VIP精品文档

相关文档