
基金项目:国家自然科学基金资助项目(604963205);国家自然科学基金资助项目(60273017);国家863专项(2003AA4Z3030);国家863计划资助项目(2002AA4Z3420);北京市科技计划重大项目(H030130060011)
作者简介:王珊(1944-),女,江苏无锡人,教授,博士生导师,主要研究方向:数据库与知识库、网格数据管理、数据仓库与O LAP; 张坤龙(1971-),男,青海人,讲师,博士研究生,主要研究方向:网格数据管理、高性能数据库系统.
文章编号:1001-9081(2004)10-0001-03
网格环境下的数据库系统
王 珊,张坤龙
(中国人民大学信息学院,北京100872)
(swang@ruc.edu.cn)
摘 要:网格计算是一种重要的新技术,网格上的大量数据需要使用数据库系统来管理。在介绍了与网格环境下数据库系统相关的研究工作之后,讨论了网格数据库的研究内容,包括网格数据库管理系统、网格数据库集成和网格应用的新需求。建议数据库研究人员对网格数据库作更多的研究,致力于从网格应用中发现并解决网格数据库面临的新问题。
关键词:网格计算;数据管理;数据库系统中图分类号:TP311.13 文献标识码:A
Database system on the grid
W ANG Shan,ZHANG Kun long
(In formation School ,Renmin University o f China,Beijin g 100872,China)
Abstract:GND computing is an important new technology.Database System is needed for managing a large number of data on
the grid.The work relevant to database system on the grid was i ntroduced and topics in grid database which include grid DBMS,grid database integration,and new requirements of grid applications were discussed.It is suggested that the database researchers do more research on grid database to finding and resolving the new problems caused by grid applications.
Key words:grid computing;data managemen t;database system
0 引言
计算机硬件技术的高速发展使得有效地利用大范围内分布的资源来完成以往无法完成的应用成为可能,网格技术[1]就是在这样的条件下产生的。现在,网格技术已经跨越了最初的原型研究阶段,正在进入实际应用。
用户希望网格在使用上类似电力网一样可靠易用。不需要知道电能的来源,路径,类型,而 即插即用 ;也希望网格给最终用户提供与地理位置无关、与具体的计算设施无关的计算能力,最终用户可以将网格看作一个自主管理的强大的虚拟计算环境。
技术层面上,网格计算是分布式计算的一个新的阶段,它解决在动态的异构的虚拟组织中如何控制和协调对资源的共享。(1)虚拟组织由遵守资源共享规则的一组个体和机构组成,具有分布、动态、异构性质。成员在地理上分布,属性随时间变化,各成员在目标、结构、规模、管理/运行模式等方面各不相同;(2)资源范围很广,包括计算机、设备(如天文望远镜、雷达)、软件、服务、数据等。用户不需考虑资位置;(3)共享不再是简单的资源互连和简单使用,而是通过互连、组合和协作来解决问题,产生新服务、增值数据和知识等资源。
网格技术现在已经发展到了第三代[3]。第一代网格连接地理上分布的超级计算,共享计算资源,也称作元计算,代表性项目有FAFNER 和I WAY 。第二代网格采用标准化接口、中间件处理和异构,支持进行大规模计算和海量数据处理的
高性能应用程序,代表性项目有Globus 和Legion 。通常将侧重提供大规模计算能力的网格称作计算网格,而将具有海量数据处理能力的网格称作数据网格。第三代网格采用面向服务,具有自主计算的特性。
网格就是下一代因特网 强调了网格对未来社会的影响。毫无疑问,数据库系统也将应对网格带来的挑战。
1 研究现状
有两个原因使得在网格上使用数据库系统成为必需:(1)很多网格应用使用了结构化的数据,例如生命科学研究和地球科学研究绝大多数的商业应用中已经部署了数据库系统;(2)网格本身用结构化的数据来实现其运行和管理。本节将简介几个网格数据库系统。1.1 数据库存取与集成
全球网格论坛(GGF,Global Grid Foru m,http://www.ggf.org)的主要目标是建立网格的技术标准,由七个领域组成,每一个领域又分为若干个工作组和研究组。DAIS 工作组(Database Access and Integration Services Workin g Group)隶属于GGF 的数据领域,其主要研究内容是如何将数据库运用到网格中[4]。
网格数据库面临的主要问题:(1)数据库必须符合网格的标准,数据库应该成为网格中的一种资源并且提供相应的服务;(2)不同种类的数据库产品在功能和接口上也有很大的不同,在集成各种数据库系统到网格中时要尽可能保留这些系
第24卷第10期
2004年10月
计算机应用Computer Applications
Vol.24No.10
Oct.2004
针对上述问题,DAIS工作组正在制定网格数据库服务的标准,该标准的草案[8]可以从GGF的网站上下载。OGSA DAI (Open Grid Services Architecture Data Access and Integration)项目的目标是构造一个中间件,用于网格环境中对数据的存取和集成,是DAIS工作组制定的网格数据库服务标准草案的一个参考[9]。
1.2 分布式查询处理
网格是分布式系统,需要做分布式查询。Polar*[10]项目研究网格环境下分布式查询,试图根据网格本身的特点实现高性能的分布式查询处理。
Polar*项目旨在:(1)设计一种描述型查询语言,表达数据存取和数据分析任务;(2)研究可用的网格资源、用户需求和代价约束,研究查询优化方法和代价模型;(3)研究查询优化和执行的方式;(4)研究长任务如何利用在运行中变为可用的额外资源来提高性能;(5)研究查询动态响应资源,资源改变包括出现新的可用资源、资源回收、失效和共享资源上负载的改变等。
Polar*项目的研究者认为,网格环境下分布式查询处理最大的特点是自适应性,它必须能充分利用并行计算能力和网格资源动态演化的特性。与其他环境下的分布式查询处理的主要区别在于:(1)提供了一套系统化的方法来安全地利用远程的数据资源和计算资源;(2)提供动态资源发现、分配和监控机制;(3)提供监控网络连接状态的机制;(4)网格遵循(正在开发的)标准,在网格上各种形式的数据库可以以统一的形式存取。
研究网格环境下分布式查询处理的还有OGSA DQP(Open Grid Services Architecture Distributed Query Processing)项目[11],它建立在OGSA DAI项目的基础之上。
1.3 数据流处理
数据流应用最近被广泛研究。这类应用中的部分或全部数据并非事先已经存储在磁盘或者内存中,而是以多个连续数据流的形式不断到达。与传统的基于存储的关系模型的区别在于:(1)数据流中的数据元素联机到达;(2)系统不能控制数据元素达到的次序;(3)数据流中可能有无限多个数据元素;(4)数据元素在处理后不是被丢弃就是被归档。典型的数据流应用包括金融分析、网络监控、电信数据管理和传感器网络等。
d QUOB(dynamic QUery Objects)项目[12]基于关系数据库来管理数据流,其特点是,采用了基于网格的体系结构,将数据流转变成网格上的一种资源。需要研究的问题有:(1)查询分布。在网格中,数据流对于用户而言是位置透明的,用户在查询时认为所有的数据流存储在一起;(2)数据分布。不同的数据流可能具有相同的数据元素格式;(3)管理长时间查询。其查询结果需要使用网格数据传输机制;(4)查询实例化。用户以文本形式输入一个SQL查询,该查询转变为在数据流结点处可执行的查询。
d QUOB项目的目标是满足在科学计算可视化、性能监控和大规模传感器网络应用中数据流管理的需要,已被应用于自动机器人仿真和全球气候变化建模等应用。
1.4 信息检索
主要研究如何搜索非结构化的数据(如文本文档)以返回用户查询结果,如因特网搜索引擎,它和数据库技术的结合是近年来数据库领域的研究热点。已经有项目在研究如何融合信息检索技术和网格技术。
GridIR工作组(Grid Information Retrieval Working Group, http://www.gridir.org)隶属于GGF的信息系统和性能领域,其主要研究内容是制定一个网格环境下分布式信息检索的标准。GridIR工作组的基本想法是将信息检索系统划分为几个可以实现为网格服务的模块。目前,GridIR工作组尚未完成标准的制定。
GRACE(GRid seArch and Categorization Engine,http://www. grace-ist.org)项目计划网格上开发一个分布式的搜索和分类引擎,到2005年2月结束。
1.5 科学数据分析
Chi mera是虚拟数据管理系统,含两个组件:(1)虚拟数据目录,采用关系数据库存储数据派生过程和派生的数据;(2)虚拟数据语言解释器,用虚拟数据语言写成的用户请求由它翻译为数据库上的数据定义和查询操作。Chimera可以生成虚拟数据并追溯数据的来源,已经在Gri PhyN网格项目中被成功的应用。
GridDB比Chimera更进一步,它在现有的过程为中心的网格服务上增加了对于科学数据分析的重要服务,包括描述型界面、类型检查、交互式查询处理和记忆等。GridDB的数据模型函数是数据模型的扩展,其查询语言包括数据定义语言和数据操纵语言,可描述表示工作流,通过关系型界面来存储数据。
2 研究内容
网格数据库当前研究内容包括三方面。
2.1 网格数据库管理系统
网格提供一个平台,支持系统化的身份鉴别和授权、资源发现、数据传输、进程创建和调度以及跨异构平台的动态绑定,进而构造安全可靠具有自主计算能力的高性能网格数据库管理系统。构建要点包括:(1)提供中间件,将现有的数据库管理系统包装成为网格服务,如第1节介绍的OGSA DAI。其优点是不需要改动已有的DB MS。(2)扩展已有的DB MS,利用网格实现分布式的数据管理和相关的网格服务。主要研究内容有:(1)研究一致性的身份鉴别和授权机制;(2)解决订阅/发布问题需要结合数据库管理系统的触发器机制和网格中的通知服务;(3)查询结果的缓存;(4)资源发现机制。了解网络的状态、获得合适的资源来运行分布式查询或存储中间结果;(5)资源预留功能,以便参与网格中的进程调度;(6)网格记账和支付标准,以便用户为资源的使用付费。
2.2 网格数据库集成
网格的主要目标是支持在共享资源上的协同工作,网格数据库集成就是使用两个或多个网格数据库中的信息,并使用这些信息构建一个大的数据库。
目前有三种网格数据库集成策略:(1)虚拟数据库。虚拟数据库只有一个数据库模式,用户不会觉察到多个的数据库存在。在构造虚拟数据库时,需要考虑几种透明性:异构透明性、命名透明性、属主和费用透明性、并行透明性和分布透明性[7];(2)定制集成。即由应用程序完成数据库集成。例如在科学应用程序中,开发人员找到相关数据源,然后将集成任务划分为查询、执行程序、中间数据源的构建、传输和数据
2
计算机应用2004年变换,以及存储等等。网格数据库管理系统应该提供对这种集成方式的支持,使之降低成本、减少时间耗费和错误的发生;(3)增量集成。虚拟数据库是一个理想目标,定制集成又过于注重细节,增量集成居于二者之间。在增量集成中,开发人员无须完成集成的每一个细节,高级的数据存取和集成组件(如OGSA DAI)可以自动完成一些后期的集成步骤。
元数据管理在网格数据库集成时扮演着关键的角色。网格数据库中与集成有关的元数据包括这样几类:(1)技术元数据,定义数据源所在的位置、物理数据的结构和组织形式、数据的存取方法和传输方式以及数据的历史和属主等等;(2)上下文元数据,定义命名方式、术语和本体,它遵循约定的语法和语义,可以提高数据的质量和可靠性;(3)派生元数据,定义由其他数据派生的数据的含义和上下文;(4)映射元数据,定义上下文元数据定义间以及上下文元数据和技术元数据间的等价性。
元数据在数据库集成时引发了很多问题。例如注册元数据时的问题,标准的元数据定义方法。目前全球网格论坛数据领域的DFDL(Data Format Description Language)工作组正在定义一种基于XML的语言来给出数据库中元数据的标准表示。正在研究中的语义网格、语义Web中关于本体的研究,也将能有助于解决涉及元数据语义方面的问题。
2.3 支持新的网格应用
应用需求是推动技术发展的源动力。网格应用将有力地推动数据库技术的发展。主要应用有:数据流处理、信息检索和科学数据分析、网格数据挖掘、网格计算机集成制造系统、网格数字图书馆等。目前国内外开展的大部分的网格项目都是网格应用项目,而且多数是服务于科学研究的需要,并带来一些新的问题,下面以网格上的科学研究(e Science)来说明这一点。
在网格上的科学研究中,对数据的使用有两个重要的方面:一方面数据是数据挖掘和假设检验的信息源;另一方面共享数据是科学家们协作的基础。网格环境下的数据库管理系统要想成功地服务于科学研究,就必须充分考虑科学研究活动中数据管理的特殊需求,例如:(1)归档。科学研究中的研究结论是在特定时间特定状态的科学数据库的基础上的得到的,如果要验证一个科学结论,就需要将科学数据库的状态恢复到得出结论时的特定状态。因此需要研究支持快速恢复所有先前状态的归档方法;(2)注解。自动记录数据的派生关系,也可以由科研人员手工添加以记载他们对数据的理解。无论以哪种方式生成注解,带来的问题都是注解需要以合适的方式进行管理以便共享;(3)新的存储结构和索引。科学研究中要处理海量的科学数据,而且在检索数据时多使用近似匹配,需要研究能够充分利用网格优点的新的科学数据存储和索引方法。一个简单的例子可以是在计算能力大的网格结点上构造索引,然后将这些索引分发到计算能力较小的网格结点上以便能够做并行分布式数据处理。
3 研究趋势
分析国内外所做的与网格环境下数据库系统有关的研究,认为有以下几个研究趋势值得引起关注:
1)注重制定数据库存取与集成的标准。网格非常强调遵循标准,进行研究应该树立标准先行的观念。虽然网格数据库集成所涉及的问题并没完全解决,目前已有网格数据库存取与集成的标准草案,根据它实现了实际可用的软件系统。虽然草案不一定能成为标准,但是很多其他的研究,已经以这个标准草案为基础展开了。
2)更多地研究网格数据库管理系统。目前实现网格数据库存取和集成采用的是中间件的方法,这是一种简单的方法,预计未来数据库管理系统将会更直接地支持网格。我们认为将来的网格数据库管理系统有三个特点:高性能、全共享和零管理。高性能是基于网格强大的并行计算能力;全共享是指不仅要共享网格数据库管理系统管理的数据资源,还要共享网格数据库管理系统本身,即网格数据库管理系统本身也成为具有良好互操作性的网格资源;零管理也就是自主计算,网格数据库管理系统将充分适应网格动态和自治的特点,做到像电力网一样24!7无需人工干预安全可靠地运行。
3)继续发掘网格应用的新需求。计算网格、数据网格、信息服务网格有很多的数据管理问题需要解决,其中有的问题不是简单地将数据装入数据库就能解决,它们是新的问题,能够推动数据库技术的发展。另外,将原来非网格的应用移植到网格环境下时,也会出现一些新的问题,对于这些问题也应该去分析和研究。
4)在网格环境下开展数据库新技术的研究。有一些数据库新技术的研究,如果放到网格环境下来做,会激发新的问题解决思路,例如前面第一节介绍的网格数据流管理。中国人民大学数据库与知识工程研究所就展开了网格环境下数据库信息检索新技术的研究,目前已经取得了部分研究成果。
4 结语
网格作为一种新出现的重要技术和应用,必然会给数据库技术带来巨大的冲击。本文介绍了网格环境下与数据库系统有关的一些研究工作,总结了当前网格环境下数据库系统的研究内容,分析了网格环境下数据库系统的研究趋势。我们认为,网格数据库系统有很好的前景,但面临一些新的问题需要解决,网格数据库系统研究人员要注意结合网格应用的新需求来展开自己的研究。
近年来,网格技术在国内外都得到飞速发展。网格研究呈现了实验室研究和实际应用紧密结合的局面,网格技术的应用从单纯的科学计算领域扩展到企业计算领域,并推动了相关的产业化进程。
参考文献:
[1] FOSTER I,KESSELMAN C.The Gri d2:Blueprint for a new computing
i nfras tructure[M].Morgan Kauf man,2003.
[2] 都志辉,陈渝,刘鹏.网格计算[M].北京:清华大学出版社,
2002.
[3] RO URE D,BA KER M,JENNINGS N,et al.The Evolution of the
Grid.Grid Computi ng:Making the Global Infras truc ture a Reality[M].
John Wiley&Sons,2003.
[4] WA TSON P.Database and the Grid[R].Technical Report CS-TR-
755,Universi ty of Ne wcas tle,2001.
[5] PATON N,A TKINSON M,DIALA NI V,e t al.Database Acces s and In
tegrati on Services on the Grid[R].UK e-Science Programme Technical Report Number UkeS-2002-01,2002.
[6] A TKINSON M,DIALANI V,G UY L,et al.Gri d Databas e Access and
Integration:Requi rements and Functionalities[Z].GGF Document GFD.
13,Global Grid Forum,2003.
(下转第23页)
3
第10期王珊等:网格环境下的数据库系统
