一种分布式查询处理研究-技术方案_第1页
一种分布式查询处理研究-技术方案_第2页
一种分布式查询处理研究-技术方案_第3页
一种分布式查询处理研究-技术方案_第4页
一种分布式查询处理研究-技术方案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑一种分布式查询处理研究-技术方案网格是一种新兴的技术,正处在不断发展和变化当中。目前学术界和商业界围绕网格开展的研究有很多,其研究的内容和名称也不尽相同因而网格尚未有的定义和内容定位。比如国外媒体常用“下一代互联网”、“Internet2”、“下一代Web”等来称呼网格相关技术。但“下一代互联网(NGI)”和“Internet2”又是美国的两个具体科研项目的名字,它们与网格研究目标相交叉,研究内容和重点有很大不同。企业界用的名称也很多,有内容分发(ContentsDelivery)、服务分发(ServiceDelivery)、电子服务(e-service)、实时企业计算(Real-TimeEnterpriseComputing,简称RTEC)、分布式计算Peer-to-PeerComputing(简称P2P)、Web服务(WebServices)等。中国科学院计算所所长李国杰院士认为,网格实际上是继传统互联网、Web之后的第三次浪潮,可以称之为第三代互联网应用。

网格中的资源是分布式的,所以基于网格的查询是分布式查询。分布式查询已被广泛地用于数据密集型的应用程序,用户关心的数据存放于多个位置,而且是异构的、分散的和自治的,因此需要提供一种集成数据资源的方法。网格资源的异构特性及其网格环境动态变化的特点给分布式查询处理技术带来了新的挑战,传统的技术已经不能满足网格环境的需要。

1分布式查询处理原理分析

图1是一个典型的分布式查询处理(DistributedQueryProcessing,DQP)机制的示意图,在很多与分布式查询处理相关的文献中都可以看到。这个图表示了二个阶段的优化,个阶段是单节点优化,第二个阶段是多节点优化。当一个查询被提交以后,首先经过一个分析过程,分析器根据数据源的元数据信息进行类型和一致性检查,将分析结果表示为一棵树。然后将这棵树提交到逻辑优化器产生一个逻辑计划,逻辑计划表示成另外一棵树,它的叶子节点与执行查询所需要的操作符相对应。通过物理优化,逻辑计划转化成一个物理计划(也是一棵树)。因为一个逻辑操作符可能与很多个物理操作符相对应,需要使用代价模型选择一个执行时开销可能的计划。逻辑和物理优化器组成了单节点优化器并产生了一个连续计划。

以上介绍了普通的DQP结构,下面结合网格的特点,给出在以服务为中心的网格环境中实现分布式查询引擎(DQPE)必须满足的一些条件。

(1)自适应性。网格环境中数据源的统计信息是不准确的,而且环境不可预测及易变,只根据编译时得到的信息很难产生有效的查询计划。

(2)进度监控。查询进度的监控是实现自适应性的基础条件,并且必须解决基于OGSA(开放网格服务体系结构)统一的实现框架,否则无法在实际中应用。

(3)对数据库中数据和元数据的标准访问。在以服务为中心的体系结构中,数据源都被包装为服务,查询引擎需要访问数据和元数据以获得查询优化时所需要的信息。

2与DQP设计相关的网格服务属性

OGSA为网格中的资源共享提出了一个以服务为中心的框架。OGSA首先为网格服务提出了一套约定和行为,一个有状态的服务实例支持可靠和安全调用、生命周期管理、通知、策略管理和信任状管理。网格服务规范也定义了动态创建服务实例和发现这些实例的接口。网格服务能维护元数据,而且支持对这些元数据的查询。下面着重讨论一些与分布式查询处理引擎实现有关的网格服务属性。

2.1注册和服务元数据

OGSA中的注册机构拥有一个服务句柄(GSH)列表,每一个句柄拥有与这个句柄表示的服务有关的静态元数据信息的一部分。一旦选择了一个句柄,就可以进一步查询与这个服务相关的更多的元数据。OGSA(OpenGridServicesArchitecture)被称为是下一代的网格体系结构,它是在原来“五层沙漏结构”的基础上,结合的WebService技术提出来的。OGSA包括两大关键技术即网格技术和WebService技术。随着网格计算研究的深入,人们越来越发现网格体系结构的重要。网格体系结构是关于如何建造网格的技术,包括对网格基本组成部分和各部分功能的定义和描述,网格各部分相互关系与集成方法的规定,网格有效运行机制的刻画。显然,网格体系结构是网格的骨架和灵魂,是网格的技术,只有建立合理的网格体系结构,才能够设计和建造好网格,才能够使网格有效地发挥作用。

注册的另外一个用途就是DQP引擎需要发现监控服务,它监控网格上的计算资源,并提供有如处理器的数目、内存容量等的统计信息,还有像某一时刻某一节点处理器的负载、当前可用的内存、当前的网络通信量等动态信息。

2.2动态服务创建和生命周期管理

一个分布式查询处理引擎应该能动态地利用网格上可用的机器分发和执行一个个查询子计划,这就需要动态创建和部署能执行这些子计划的服务,并且必须使服务实例提交完任务之后能撤销,从而释放它所利用的资源。

2.3通知机制

网格服务的状态信息会随着系统的运行而发生变化。网格服务之间的许多交互要求动态地监控状态的变化。通知把一种传统的发布(NotificationSource)和订阅(NotificationSink)范式应用于这种监控。网格服务支持一个接口,以允许其他网格服务订阅进行变更。

3OGSA环境中的DQP实现机制

这一节主要介绍在基于OGSA的环境中执行分布式查询所涉及到的服务交互。

3.1查询分析和解释

图2中设计了四个主体元素:客户(Client)、注册机构(Registry)、分析器(Parser)和网格数据服务GDS(GridDataService)。Registry是由许多组织共享的一个虚拟组织注册机构。

从图2中可以看出,客户提交请求后,分析器为了获得在类型检查阶段所需要的元数据信息,开始搜索与查询相关的GDS。实际上,GDS句柄在DQP实例被创建时就已经可以得到。分析器访问GDS,以获得执行任务所需要的更多的元数据。

3.2单节点优化

网格资源监控服务(GRMS)通过图3所示的注册机构注册,它部署在网格上并提供关于计算资源状态的实时统计信息。分析器产生一个输出并将其表示为一棵树后,分布式查询优化器将查阅注册机构以获得在查询中涉及到的GDS的元数据、可用计算资源的信息以及当前计算负载。

3.3查询计划的调度和执行

执行者(Evaluator)是一个服务,它负责子计划的执行。执行者工厂(EvaluatorFactory)是一个服务,它实现了网格服务工厂端口类型(GridServiceFactoryPortType)。正如图4所示:当优化器使用从GDSs和GRMSs获得的元数据产生了优化的子计划后,它要把这些子计划分布到各个节点上执行,其关键是子计划与具体的机器资源的映射。

3.4查询进度监控

优化器服务的内部部件也值得注意。图5中解决的主要问题是基于进度监控的自适应行为的处理。可以使用OGSA通知机制创建一个进度监控框架。为了实现这个目标,优化器应当实现OGSA信息接收端口类型(NotificationSinkPorttype),并且应当有一个内部元件监听Evaluators发来的消息。Evaluators充当了一个信息源的角色。很显然,进度消息的内容在这里很重要。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论