基于结构化P2P的分布式数据流系统的查询处理模型

2024-06-20

基于结构化P2P的分布式数据流系统的查询处理模型(精选2篇)

1.基于结构化P2P的分布式数据流系统的查询处理模型 篇一

测井数据是利用井下仪器、地面设备获得的一种测井资料, 利用测井曲线可以预测含有原油的砂体分布, 掌握储层物性参数空间分布规律, 该数据的处理在石油勘探与开发过程中占有重要地位。目前, 测井曲线的处理大多由手工完成, 费工费时。通常, 一条中等规模的测井曲线, 需要10个以上的人时处理, 而国外基于UNIX工作站开发的测井曲线处理系统, 不但操作复杂, 脱离我国实际生产情况, 且价格过于昂贵, 由于此类系统通常采用单机处理模式, 信息检索和处理速度、系统容量低下, 严重制约了油田开发数据处理的进程。因此, 开发基于Windows平台的, 适合我国实际生产需求的分布式测井数据自动处理系统是非常必要的。

1 系统模型

测井数据处理的主要工作是确定石油储层的性质。储集层是指具有储集空间, 储集空间又相互连通的岩层。本系统主要处理的测井参数有储层厚度、孔隙度、油气饱和度、渗透率等等, 图1是经过分析得到的数据流图。其中现场生产单位给出的测井数据分为新老两个系列。

新系列经验公式的变量有:厚度外 (米) ;三側向 (黑) /Rlls;三側向 (红) /Rlld;密度/Den;声波时差/Hac;井径/Cal;微电极 (黑) /Rmg;微电极 (红) /Rmn;自然电位/Sp;伽玛/Gr。

老系列经验公式的变量有:厚度外 (米) ;0.25米/R025;0.45米/R045;三側向 (黑) /Rlls;三側向 (红) /Rlld;声波时差/Hac;井径/Cal;微电极 (黑) /Rmg;微电极 (红) /Rmn;自然电位/Sp。

该系统通过对原始数据读取, 绘制曲线, 将数据导入内存;然后根据分层数据表对原始数据进行读值操作, 得到读值曲线;最后根据经验公式计算出参数数据;在整个过程中, 操作员都可以对当前数据进行处理, 调整预设参数, 人工干预数据的生成过程[2,3,4]。

2 关键技术

2.1 高速分布式并行检索

分布式并行体系结构下的测井数据的检索通常分为两个步骤, 其方法与系统内部结构如图2所示。

(1) 异地检索所要处理的测井曲线所在位置

注意:尽管单个测井曲线数据文件可以被存放在磁带或者硬盘中, 但运算时为了加快处理速度, 通常需要将其导入内存。为此, 在从单机中读出测井数据进行扩散的同时, 硬盘存储该数据的节点自动记录各条曲线的扩散信息 (包括文件名称、曲线名称、源节点、目的节点、目前状态等) ;同时, 由于此类信息的数据项较多, 且使用频繁, 在此采用了“分布式哈希”DHT (Distributed Hash Table) 算法, 计算求得该曲线扩散的目标节点, 并将其主动发布到该节点上;目标节点接到扩散信息后, 将其纳入本地测井曲线记录表中。当其他节点需要该曲线信息时, 首先从本地记录表中检索曲线所在的位置, 如果有对应的记录, 则通过千兆以太网, 从对应节点的内存 (而不是硬盘) 中获得该曲线的最新数据。如果没有该项记录, 则利用曲线的文件名等元数据, 通过DHT算法得出该曲线的扩散记录所在的目标节点;进而向目标节点发出查询信息;目标节点接到信息后, 查询本地记录表, 发送对应的曲线数据给请求节点。这种方法从系统整体上降低了检索的开销。

(2) 测井曲线特定层段的检索

当本地/异地需要从特定曲线中检索层段数据时, 如何从数万条相关记录中检索有用信息一直困扰着研发人员。根据测井曲线自身的特性 (沿y轴反方向生长, 并逐级分层) , 且相同深度包含的层段数据量可能不同 (浅层砂岩通常分层较少, 而深层砂岩可能在数米之内有上百个层段) , 因此本系统采用了二级并行索引的方式解决该问题:第一级索引基于深度构建, 其基本思路是在导入数据时, 在曲线模型中加入深度索引信息;即每读出100米数据, 即标注该100米数据的起始段编号和结束段编号。第二级索引基于层段名建立, 即每当读出名称相同 (中/英文名前缀相同) 的层段数据, 记录其若干连续同名层段中的起始/结束段名以及编号;所有的索引信息以附加信息形式添加在特定曲线数据的尾部, 并且在曲线模型的元数据记录其入口及相关信息。

2.2 分布式数据同步

该系统将有众多的操作员进行数据处理, 可能会出现多个操作员频繁处理同一条记录的情况, 如果不采用分布式数据同步方法保证数据处理的顺序性, 将会导致数据的不一致。本系统采用的分布式同步算法的主要步骤如下:

1) 当编辑曲线的节点需要进入处理特定层段时, 利用“文件名称+曲线名+处理层段名称”, 按照哈希类算法生成仲裁节点标志, 然后向仲裁节点发送请求。

2) 仲裁节点中建立“先进先出”的请求队列, 并按照请求消息到达的先后顺序发送应答给请求节点;当队列头部是连续“读”请求时, 可以同时发送若干应答给多个“读”请求节点;如果队列头部是“写”请求, 则仅仅发送应答给“写”请求节点。至此, 分布式同步问题以本地方法得到了解决。

3) 仲裁节点将携带本地请求队列的应答消息发送给优先级最高的节点;当该节点退出临界区后, 如应答消息中的队列非空, 无需发送释放消息给仲裁节点, 直接转发应答给下一个节点 (也可能是多个“读”节点) ;如此循环, 直到应答消息中的队列为空;应答消息中的队列为空后, 最后一个获得该消息的节点, 退出编辑状态后, 将发送释放消息给仲裁节点。

3 试验与分析

该系统目前已在生产现场得到了应用。生产部门组织了该系统与目前国外某型专用测井数据处理系统的对比试验。其中, 本系统采用4台微机服务器 (CPU 2.8G, 内存1G, 并且可以随时扩容) 作为试验平台;国外专用小型机中有4片CPU, 内存1G, 系统无法扩容。最终的处理时间对比如图3所示。较之国外系统, 本系统的平均处理时间缩短了三分之二以上;国外系统只允许一个操作员控制一条曲线, 整个系统最多只有5个操作员可进入系统;而本系统可以同时容纳20个操作员, 提高了工作效率。

4 结 论

本文给出了基于分布式并行结构的测井数据处理系统, 并描述了该系统实现的关键技术。该系统已经在生产中得到了应用。现场使用证明, 该系统具有良好的扩容性能, 能够减轻计算、通信等负载, 因此具有较高的推广价值。

摘要:针对测井数据处理系统中交互数据检索速度慢等一系列问题, 提出一个专用分布式并行模型。该模型通过分布式并行技术提高数据检索速度, 通过定点同步的方法保证了多用户数据一致性。性能及试验分析表明, 该模型提高了系统的容量和处理速度, 提供了高效的数据一致性维护等服务。

关键词:分布式并行,检索,数据处理

参考文献

[1]王群.矿场地球物理.黑龙江:大庆石油学院出版社, 1999:1-3.

[2]Jose Duato.并行计算机互联网络技术[M].谢伦民, 等译.北京:电子工业出版社, 2004:22-48.

[3]Jie Wu.分布式系统设计[M].高传善, 译.北京:机械工业出版社, 2001:3-16.

[4]张海藩.软件工程导论[M].3版.北京:清华大学出版社, 1998:8-129.

2.基于结构化P2P的分布式数据流系统的查询处理模型 篇二

当前,对等计算P2P(peer-to-peer)备受计算机研究界的关注。在P2P系统中,每个对等节点(peer,简称节点,如用Internet连接的PC)功能与责任对等,即既可充当服务器为其他节点提供数据与服务,又可作为客户机享用其他节点提供的数据与服务;节点间的交互直接对等;此外,任何一个节点可以随时加入或离开该系统,形成一个真正的动态网络环境。已经取得的研究成果表明,这类系统具有许多潜在优良特性,如系统可扩展性好、资源(种类与数量)丰富、性能高等;并可应用于许多领域:如CPU周期共享、信息传输、协同工作、信息共享[1]等。其中,信息共享已经成为当前P2P研究与开发的热点。但现有的P2P信息共享系统大都仅限于缺乏语义的粗粒度(文件水平)共享,用户通常通过文件名进行查找。这种不能基于语义的共享模式限制了P2P潜能的发挥。

为消除上述局限性,研究界提出了P2P信息检索的理念[2,3,4],把P2P与信息检索相集成,充分发掘各自的优点并相互克服对方的不足。由于P2P信息检索尚处于研发的初始阶段,开发这类系统面临不少挑战,如系统的体系结构、资源定位、查询方式、查询路由等。其中,查询方式就是亟待解决的关键问题之一。

在现有的P2P信息系统(包括信息共享与信息检索两类系统)中,查询方式有两类:(1)基于文件名的查询方式,如Napster与Gnutella,用户的查询为一个文件名。相关节点收到查询后把跟查询相同的文件名的文件返回给查询提交节点,供用户选择。采用这种查询方式时,如果用户事先不知道文件名或者文件名不能准确刻画文件的主题,即使系统中有大量的答案,用户也难以检索到所需信息对象。(2)基于关键词的查询,如文献[3],用户提交的查询为一个或一组关键词,相关节点把跟查询语义最相关文件返回给查询提交节点,供用户选择。这种查询方式简单易用、用户友好,但由于查询包含的关键词的数量有限,查询处理的结果必然包含大量答案。因而,这种查询方式不但难以精确地满足用户的信息需求,而且还造成了大量的计算资源与带宽的浪费。为消除这两类查询方式的局限性,本文提出了一种全新的查询处理策略,取得以下成果:

(1) 基于P2P信息检索系统的特性,提出了基于案例查询的理念;

(2) 面向P2P信息检索系统,论述了基于案例查询策略的机理;

(3) 阐述了基于案例的查询方式的处理过程及实现算法。

1相关工作

当前的P2P信息系统有信息共享与信息检索两类系统。P2P信息共享系统(如Napster等)大多采用基于文件名的查询方式。该方式仅支持粗粒度且缺乏语义的信息共享,难以满足用户需求。

为了消除当前P2P信息共享系统的局限性,研究界提出了P2P信息检索的概念,相关研究取得了较大进展。文献[2]介绍了PeerIS:P2P信息检索系统;并论述了体系结构、节点模块构成及工作流程等关键技术。但PeerIS目前仅能支持基于关键词的查询方式。

文献[3]也是基于向量空间模型的P2P信息检索系统,采用基于关键词的查询方式。文献[4]是结构化P2P信息检索系统,也采用基于关键词的查询方式。

2基于案例的查询机制

2.1案例查询与答案

P2P信息检索系统的查询的格式决定于其采用的查询方式。现有的P2P信息系统中共有两种查询格式:(1)在采用基于文件名查询方式的系统(如Napster)中,查询格式为某一特定的文件名;(2)在采用基于关键词查询方式的系统中(如PeerIS)中,查询为一个或一组关键词{K1,K2,…,Kt},其中t为查询中关键词的个数。

为了更加精确地表达用户的信息需求,本文提出基于案例的查询处理策略。在该查询策略中,查询为一篇完整的文章;而查询答案就是与该文章语义相关的文档,定义如下:

定义1 设dq为用户U已有的一篇文档,且dq能表征U当前的信息需求,那么把dq作为一个查询q提交给系统S,使Sdq为案例进行检索操作;所得答案Aq就是由跟dq语义相关的一组文档构成的集合,即:Aq={da|SR(da,dq)≥threshold},其中SR(da,dq)为文档的语义相似度,threshold为系统设定的阈值。

2.2案例查询及其答案表达机制

由于P2P信息检索系统继承了信息检索技术与P2P的特性,因而每个节点均为自治的信息检索系统。因而每个节点维护的文件都用向量空间模型(VSM)[5]表达。接下来,分别定义共享文档、案例文档的向量。

定义2 对于系统中的任一节点P的任一文档dj,且djt个索引项,其任一索引项ki在文件dj的重要程度(ki, dj)用一权重wi,j来表达,那么dj的向量被定义为:

dj=(w1,j,w2,j,...,wt,j) (1)

定义3 用户用一个案例文档dq来表达其信息需求,该案例文档中共有t个索引项,每个索引项在表达其信息需求的重要程度时也用一权重wi,j来表达,那么查询案例的向量定义为:

dq=(w1,q,w2,q,...,wt,q) (2)

定义4 设N为任一节点所维护文件的总数,ni为索引项ki出现于其中的文件数,那么,索引项ki的原始文档频数freqi,j定义为:

freqi,j=niΝ (3)

进而,索引项ki的标准文档频数fi,j定义为:

fi,j=freqi,jmaxlfreql,j (4)

式中,分母表示文件dj中的最大原始文档频数,如ki没出现在文件dj中,则fi,j=0。

定义5 索引项ki的反比文档频数idfi定义为:

idfi=logΝni (5)

这样,所有权重可由下列公式计算:

wi,j=fi,j×idfi=freqi,jmaxlfreql,j×logΝni (6)

至此,节点维护的文档及用户提交的案例文档的向量均可通过上述6个公式确定。

2.3答案确定机制

根据向量空间模型理论,查询案例文档dq与节点文档dj的语义相关程度可用两者的向量的夹角余弦来度量。

定义6 设dq用户提交的查询案例文档,dj为节点维护的共享文档,那么共享文档与查询案例文档的语义相关程度定义为:

SR(dq,dj)=dqdj|dq|×|dj|=i=1twi,j×wi,qi=1twi,j2×i=1twi,q2(7)

式中,|dq|和|dj|分别表示案例查询与节点文件的向量的模。

由上述推理过程可知,如节点P所维护的文档dj跟查询案例文档dq的语义相关度超过阈值,那么该文档就是用户所查询的答案。因此,案例查询答案的确定机制为:

Aq={φ,ifSR(da,dq)<th{da|SR(da,dq)}ifSR(da,dq)th

(8)

式中,th为相似度阈值(threshold)。

由于用户查询案例文档所包含的信息远远超过一组关键词所蕴涵的语义,因而查询的约束条件更加严格。所以,查询结果能更精确地满足用户需求。此外,由于从远程节点返回的答案数量较少,故系统的带宽利用效率也更高。

3基于案例查询策略的实现

本文提出的基于案例查询的策略在检索处理过程中即席实现。当一个查询通过某个节点提交给系统,这个案例查询首先在本地进行解析(包括所有文本预处理操作,如去虚词、取词根等),此时查询案例文档的索引项可确定。然后,查询处理以并行的方式在系统中进行:如果高层元数据表明本地可能有合格答案,就对本地文档库进行查询,同时根据系统的资源定位机制及查询路由协议把该查询转发给其他可能提供合格答案的节点。其他节点一旦接到查询,便根据高层元数据判断本地是否可能提供合格答案,如果是,就根据公式(7)计算查询与相关文档的语义相似度SR(dq,dj),否则仅转发查询消息。最后,这些节点就把本地满足语义要求(即SR(dq,dj)≥threshold)的所有答案的相关信息以<Title,SR,Summary,PID,Hops>形式返回查询提交节点。这里,Title是被检索出的文档名,SR是查询与该文档的语义相似性,Summary是被检索出的文章摘要,PID是答案提供节点的标识符,而Hops则是答案提供节点到查询提交节点的逻辑距离。查询提交节点一旦接收到答案提供节点返回的这些元组,就根据SR的大小重新排列和合并这些元组列表并展现给用户选择;如果两元组的SR的大小相同,则基于Hops进行二次排序。一旦用户选择了满意的答案,就可从答案提供节点直接下载。基于案例的查询处理过程可用算法1实现:

算法1基于案例查询处理策略的实现算法

4结论

本文为P2P信息检索系统提出了一种基于案例查询的处理策略,能够更精确地满足用户信息需求,同时更有效地利用系统计算资源和带宽资源。深入研究了该策略的理论机制,进行了相关的理论推导,阐述了该策略的处理过程及实现算法。这些成果为进一步研究P2P信息检索夯实了基础。接下来将进行实验分析,进一步揭示P2P信息检索的机理,并增强系统功能。

摘要:研究对等计算(P2P)信息检索系统中基于案例的查询处理策略。首先面向对等计算信息检索系统,提出了基于案例查询的概念;接着深入研究该策略的理论机制;最后阐述了该查询策略的处理过程及实现算法。

关键词:对等计算,信息检索,案例查询,理论机制

参考文献

[1]Wee Siong Ng,Beng Chin Ooi,KianLee Tan.PeerDB:A P2P based system for distributed data sharing.In Proceedings of ICDE,2003:633-644.

[2]凌波,陆治国,黄维雄,钱卫宁,周傲英.PeerIS:基于对等计算的信息检索系统.软件学报,2004,15(9):1375-1384.

[3]PlanetP project homepage.http://www.panic-lab.rutgers.edu/Re-search/planetp.

[4]Tang C,Xu Z,Mahalingam M.Psearch:Information retrieval in struc-tured overlays.In Proceedings of the1stACMHotNets-I,2002.

上一篇:我和大海的亲密接触作文800字下一篇:演出赞助合同范本