论文部分内容阅读
摘要:以结构化的DHT P2P网络作为分布式平台,探讨一种P2P数据库的数据索引和定位机制。我们主要使用数据复制和分层索引机制来保证高效的实现资源定位,并且避免了Hash对数据语义的破坏,使系统有效的保持数据语义间的联系。
关键字: P2P数据库,资源定位,数据复制
中图分类号:TP311.133.1文献标识码:A文章编号:1009-3044(2007)17-31329-01
A Resources Location Mechanism in P2P Database Systems
SHAN Jing-song,LI Xiao-ping
(Computer Computer Engineering Department, Huaiyin Institute of Technology, Huaian 223001,China)
Abstract: In this paper, a mechanism of data Index and resources location in P2P Database was presented, which maintained complex semantics data representation. Data replicas placed on other P2P nodes improved the fault-tolerance and availability. The mechanism of resources location based on DHT could bridge a gap between DHT P2P and complex semantics data management.
Key words: P2P Database, Resources Location, Data Replica
1 引言
Peer-to-Peer(P2P)环境下的数据管理和共享是数据库领域的研究热点,焦点问题集中在如何使得P2P支持复杂语义数据管理功能,提供数据资源复制、索引和精确的资源定位机制。
本文以结构化DHT P2P 网络Chord[1]作为分布式平台,探讨一种广域网环境下P2P数据库的资源定位机制。
2 一种P2P资源定位机制
首先,对数据使用规则进行分割,并复制到网络中去,提高系统的可靠性和处理的并行性,并建立元数据索引;最后,利用这种分层索引机制提出一种资源定位方法。
2.1 数据复制
首先把关系表进行分割,然后把这些关系表子集及其标识信息(作为元数据)复制到节点中去。数据复制的粒度为关系表,或关系表的子集,关系表R(R={i≤N│Tuplei{是其元组集合), 对R利用规则集合Rule={i<N│rl1,rl2,…,rli}进行分割后得到一系列子集{R1,R2,…,Rk}(k 图1 元数据放置策略
依据Chord路由算法,每一个节点peer可以直接与其指针表指向的节点直接通信,把这些节点称作该节点的Link_Peer (Link_Peer={peer,LP1,LP2,...LPm}), LDB,RID和rl形成了一个层次状的域名空间(rl决定的数据∈RLD标识的数据∈LDB)。这样实际上形成了一个分层索引机制,为资源定位提供了方便。
2.2 资源定位
图2 资源定位
在DHT P2P网络中利用3.1节所述的索引机制,资源定位过程如图3所示。首先,根据关系表名计算出Hash(LDB.TableName)=RID,RID是分层索引的关系表标识;随后,根据P2P网络路由算法,定位到Successor(RID)节点,该节点存储了关系表LDB.TableName的定位元数据;最后,数据请求条件和关系表子集标识(也就是副本分割条件和副本标识)相比较,返回相关副本的定位元数据,数据请求节点利用这些元数据可以直接定位到存储了相关副本的节点。
下面以查询处理和DHT Chord路由算法为例,说明该资源定位过程。假设查询语句如下:
Select a1, a2, a3 from LDB.R Where Cond1 or Cond2
在此查询语句中,需要确定LDB.R表示的副本所在的节点。步骤如下:
(a)Hash(LDB.R)=RID(这里我们假如等于Successor(RID)=pi);
(b)根据Chord路由算法定位到节点pi,节点pi存放了定位LDB.R副本所需元数据;
(c)查询条件Cond和分割规则rule进行比较,假如cond∩rule≠φ那么把该rule对应的(LDB,RID,rl,NodeID,IP)传递给查询发起节点p;cond∩rule≠φ说明关系表副本按cond进行分割,并且分割后形成的副本R={R1,R2,…,Rk}可以重构R,即。
(d)否则,把所有的副本对应的(LDB,RID,rl,NodeID,IP)传递给查询发起节点p。cond∩rule≠φ表示关系表没有预先按cond进行分割,因此所有副本都可能和查询处理相关。在这种情况下,可以考虑使用3.1节数据复制方法进行处理。
数据资源定位实质是对Successor(RID)后继节点的元数据集进行搜索、匹配,并把搜索结果返回请求节点的过程。
3 结论
本文描述了一种P2P分布式环境下的结构化数据共享系统及其资源定位机制。我们利用数据分割和数据复制,把节点负载分散,达到系统负载均衡和提高可用性;并且提出一种分层索引机制使得数据请求节点可以高效的资源定位,支持复杂的查询机制。该资源定位方法弥补了DHT P2P网络在管理复杂数据上的缺陷。
参考文献:
[1]I. Stoica, R. Morris, D. Karger, M. F. Kaashoek, and H. Balakrishnan; Chord: A scalable peer-to-peer lookup service for internet applications;in Proc. SIGCOMM, San Diego, CA, Aug. 2001, pp. 149–160.
[2]L. G. ALEX SUNG, A Survey of Data Management in Peer-to-Peer Systems, Web Data Management, Winter 2005, Pages1–50.
[3]R. H. Joseph,Querying the Internet with PIER,Proceedings of the 29th VLDB Conference,Berlin, Germany, 2003
[4]Roscoe, S. Shenker, I. Stoica, A. R. Yumerefendi;The Architecture of PIER: an Internet-Scale Query Processor;Proceedings of the 2005 CIDR Conference
[5]凌波, 陆志国, 黄维雄, 钱卫宁, 周傲英.PeerIS:基于Peer-to-Peer的信息检索系统[J].软件学报,2004, (9,l.15).
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
关键字: P2P数据库,资源定位,数据复制
中图分类号:TP311.133.1文献标识码:A文章编号:1009-3044(2007)17-31329-01
A Resources Location Mechanism in P2P Database Systems
SHAN Jing-song,LI Xiao-ping
(Computer Computer Engineering Department, Huaiyin Institute of Technology, Huaian 223001,China)
Abstract: In this paper, a mechanism of data Index and resources location in P2P Database was presented, which maintained complex semantics data representation. Data replicas placed on other P2P nodes improved the fault-tolerance and availability. The mechanism of resources location based on DHT could bridge a gap between DHT P2P and complex semantics data management.
Key words: P2P Database, Resources Location, Data Replica
1 引言
Peer-to-Peer(P2P)环境下的数据管理和共享是数据库领域的研究热点,焦点问题集中在如何使得P2P支持复杂语义数据管理功能,提供数据资源复制、索引和精确的资源定位机制。
本文以结构化DHT P2P 网络Chord[1]作为分布式平台,探讨一种广域网环境下P2P数据库的资源定位机制。
2 一种P2P资源定位机制
首先,对数据使用规则进行分割,并复制到网络中去,提高系统的可靠性和处理的并行性,并建立元数据索引;最后,利用这种分层索引机制提出一种资源定位方法。
2.1 数据复制
首先把关系表进行分割,然后把这些关系表子集及其标识信息(作为元数据)复制到节点中去。数据复制的粒度为关系表,或关系表的子集,关系表R(R={i≤N│Tuplei{是其元组集合), 对R利用规则集合Rule={i<N│rl1,rl2,…,rli}进行分割后得到一系列子集{R1,R2,…,Rk}(k
依据Chord路由算法,每一个节点peer可以直接与其指针表指向的节点直接通信,把这些节点称作该节点的Link_Peer (Link_Peer={peer,LP1,LP2,...LPm}), LDB,RID和rl形成了一个层次状的域名空间(rl决定的数据∈RLD标识的数据∈LDB)。这样实际上形成了一个分层索引机制,为资源定位提供了方便。
2.2 资源定位
图2 资源定位
在DHT P2P网络中利用3.1节所述的索引机制,资源定位过程如图3所示。首先,根据关系表名计算出Hash(LDB.TableName)=RID,RID是分层索引的关系表标识;随后,根据P2P网络路由算法,定位到Successor(RID)节点,该节点存储了关系表LDB.TableName的定位元数据;最后,数据请求条件和关系表子集标识(也就是副本分割条件和副本标识)相比较,返回相关副本的定位元数据,数据请求节点利用这些元数据可以直接定位到存储了相关副本的节点。
下面以查询处理和DHT Chord路由算法为例,说明该资源定位过程。假设查询语句如下:
Select a1, a2, a3 from LDB.R Where Cond1 or Cond2
在此查询语句中,需要确定LDB.R表示的副本所在的节点。步骤如下:
(a)Hash(LDB.R)=RID(这里我们假如等于Successor(RID)=pi);
(b)根据Chord路由算法定位到节点pi,节点pi存放了定位LDB.R副本所需元数据;
(c)查询条件Cond和分割规则rule进行比较,假如cond∩rule≠φ那么把该rule对应的(LDB,RID,rl,NodeID,IP)传递给查询发起节点p;cond∩rule≠φ说明关系表副本按cond进行分割,并且分割后形成的副本R={R1,R2,…,Rk}可以重构R,即。
(d)否则,把所有的副本对应的(LDB,RID,rl,NodeID,IP)传递给查询发起节点p。cond∩rule≠φ表示关系表没有预先按cond进行分割,因此所有副本都可能和查询处理相关。在这种情况下,可以考虑使用3.1节数据复制方法进行处理。
数据资源定位实质是对Successor(RID)后继节点的元数据集进行搜索、匹配,并把搜索结果返回请求节点的过程。
3 结论
本文描述了一种P2P分布式环境下的结构化数据共享系统及其资源定位机制。我们利用数据分割和数据复制,把节点负载分散,达到系统负载均衡和提高可用性;并且提出一种分层索引机制使得数据请求节点可以高效的资源定位,支持复杂的查询机制。该资源定位方法弥补了DHT P2P网络在管理复杂数据上的缺陷。
参考文献:
[1]I. Stoica, R. Morris, D. Karger, M. F. Kaashoek, and H. Balakrishnan; Chord: A scalable peer-to-peer lookup service for internet applications;in Proc. SIGCOMM, San Diego, CA, Aug. 2001, pp. 149–160.
[2]L. G. ALEX SUNG, A Survey of Data Management in Peer-to-Peer Systems, Web Data Management, Winter 2005, Pages1–50.
[3]R. H. Joseph,Querying the Internet with PIER,Proceedings of the 29th VLDB Conference,Berlin, Germany, 2003
[4]Roscoe, S. Shenker, I. Stoica, A. R. Yumerefendi;The Architecture of PIER: an Internet-Scale Query Processor;Proceedings of the 2005 CIDR Conference
[5]凌波, 陆志国, 黄维雄, 钱卫宁, 周傲英.PeerIS:基于Peer-to-Peer的信息检索系统[J].软件学报,2004, (9,l.15).
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。