[发明专利]基于分布式哈希表的数据处理方法和网络无效
申请号: | 200610145270.7 | 申请日: | 2006-11-24 |
公开(公告)号: | CN101193031A | 公开(公告)日: | 2008-06-04 |
发明(设计)人: | 曲锐 | 申请(专利权)人: | 曲锐 |
主分类号: | H04L12/42 | 分类号: | H04L12/42;H04L29/08;G06F9/46 |
代理公司: | 北京集佳知识产权代理有限公司 | 代理人: | 逯长明 |
地址: | 610000四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 分布式 哈希表 数据处理 方法 网络 | ||
技术领域
本发明涉及网络通信技术领域,特别涉及一种基于分布式哈希表的数据处理方法和网络。
背景技术
哈希表是一种带有索引值的散列表,通常用来对数字进行排序。而DHT(分布式哈希表,Distributed Hash Table)是一种分布式存储方式,这种方式将整个哈希表分开存储在不同的实体中,这些分布的哈希表形成一个哈希表网络,在不需要服务器的情况下,每个客户端负责一个小范围的路由,并负责存储一小部分数据,从而实现整个DHT网络的存储和查找,整个DHT网络具有可伸缩性和可配置性。
现有的DHT网络均为单层环形网络,这种网络可以实现数据的存储和查找等处理。现有DHT网络在网络中的多个节点上分布存储数据,每个节点有一个节点标识号,并且该节点知道其下一个节点的标识号,各个节点上存储的每一个数据都有各自独立识别的索引值,其中任意数据的索引值大于等于它所存储的节点标识号,并且该索引值小于下一个节点的标识号,所有节点首尾相连,形成一个单向发展的环,在该环形网络中沿节点标识号增大的方向查找和存储数据。如图1所示为现有基于分布式哈希表的单层环形网络的示意图,该环形网络的数据处理范围为0-100,所有要存储的数据都在该范围内进行取值,该环形网络包括7个节点,分别为5、9、23、37、48、63和92。其中,设本节点标识号为NodeId,下一节点的标识号为NextNodeId,存储数据的索引值为Key,三个值之间满足NodeId≤Key<NextNodeId。应用该网络进行数据存储的方法流程如图2所示:
步骤201:设置存储数据的索引值并将该数据发送到环形网络中的某一节点上。
步骤202:判断要存储数据的索引值与该节点标识号的差值是否大于存储数据索引值与下一节点标识号的差值,若是,则执行步骤203;否则,执行步骤204。
步骤203:该节点将数据传递到下一个节点,然后返回步骤202。
步骤204:将数据存储在当前的节点中,结束流程。
具体的,以图1所示的单层环形网络为例,将索引值为40的数据发送到环形网络的节点23上,根据单层网络顺时针存储数据的特性,节点23的下一节点为节点37,判断40-23=17>40-37=3,因此将数据传递到当前节点23的下一节点37进行处理,节点37的下一节点为48,判断40-37=3<40-48=-8(在0-100的范围内对-8取补值为100-8=92),因此将数据最终存储在节点37上。同样查找一个数据的方法与此类似,若待查找数据的索引值与当前节点标识号的差值大于待查找数据的索引值与下一节点标识号的差值,则将待查找数据顺时针传递到下一节点进行查找,否则,就在当前节点查找数据。
从以上分析可以看出,由于现有的基于分布式哈希表的网络均为单层环形网络,因此这种网络的性能函数为一个线性函数,网络中平均访问时间为nt/2,其中n为环形网络上的节点总数,t是每个节点在进行判断操作时消耗的时间,显然随着节点总数n的增加,访问的时间是线性增长的。假设网络中有1000个节点,每个节点在进行操作时消耗1毫秒的时间,那么网络中所有节点的处理总时间为1秒,若将节点间的路径时间计算进去,则需要更长的处理时间,而且实际规模应用的系统中,节点的总数量远远超过1000个。因此,当网络中所有节点都在同一个环上,当该环拥有数量庞大的节点时,则处理一圈数据带来的时延是不可忽视的,该时延将极大降低网络的性能,不利于应用在大规模的网络系统中。
发明内容
本发明的目的是提供一种基于分布式哈希表的数据处理方法,以克服现有技术中由于单层环形网络上节点数据量庞大,导致整个网络系统产生时间延迟,降低了网络性能的问题。
本发明的另一目的是提供一种基于分布式哈希表的数据处理网络,以解决现有技术中由于基于分布式哈希表的网络均为单层环形网络,导致了网络中数据处理时间长,网络性能低的问题。
为解决上述技术问题,本发明提供如下技术方案:
一种基于分布式哈希表的数据处理方法,包括步骤:
A、将主环形网络分成至少两个子环形网络,所述至少两个子环形网络的数据处理范围总和与主环形网络相同;
B、判断待处理数据是否属于当前所在子环形网络的数据处理范围,若否,则从所述当前子环形网络转移到主环形网络;
C、主环形网络根据待处理数据所属处理范围转移到与该数据对应的子环形网络。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曲锐,未经曲锐许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610145270.7/2.html,转载请声明来源钻瓜专利网。