网格数据库技术

2024-12-06

网格数据库技术(共12篇)

网格数据库技术 篇1

网格是继万维网之后出现的一种新型的网络计算平台,目的是为用户提供一种全面共享各种资源的基础设施。可以用于共享的资源多种多样,包括计算机、集群、计算机池、仪器、设备、传感器、存储设施、数据、软件等。数据作为一种重要的网格资源,在网格计算中占有重要的地位,因此,如何能方便的访问网格中的各种数据就成为网格研究领域一个重要的研究课题。数据库是保存管理数据的一种重要手段,在各种应用系统中得到了广泛的应用。

网格数据库是对现有数据库的网格化,其目的都是为了实现高效的数据管理功能,为广域范围内的数据资源共享提供支持,它基于开放网格服务体系机构提供网格数据库服务,使网格用户或其它网格服务可通过网格数据库服务访问网格中的各种异构数据库[1]。本文主要对网格数据库技术进行综述,并综合分析国内外在网格数据库方面的研究,结合实际,对其应用领域及其发展趋势提出本人的一些观点。

1 网格数据库技术

数据库技术和其他计算机技术相结合,能够产生新的研究领域。不管是在科学研究、商业应用,还是对网格本身的运行和管理,都需要使用大量结构化的数据。因此,数据库技术和网格技术相结合产生的一个新的研究内容———网格数据库技术。

1.1 研究现状

在网格数据库技术研究领域,美国和欧洲的研究范围和规模都比较大,处于领先地位。而Globus系统则顺应网格中数据管理的迫切需求,在最初面向计算网格的基础上,对数据管理的功能进行研究和实现,成为最著名的网格数据管理系统开发平台。

我国也在这方面做了大量的研究工作,推动数据网格技术的应用,面向多个应用领域所遇到的海量数据存储、管理、处理和联合服务等问题提出解决方案。

1.2 研究内容

网格数据库研究内容主要包括3个方面:网格数据库管理系统、网格数据库集成和支持新的网格应用。

1.2.1 网格数据库管理系统

网格提供了一个多功能平台,这个平台支持系统化的身份鉴别和授权、资源发现、数据传输、进程创建和调度,以及跨异构平台的动态绑定。在此基础上就可以构造一个安全可靠、具有自主计算能力的高性能网格数据库管理系统。网格数据库管理系统最终将成为网格上的一种重要资源,提供数据管理服务[2]。

构建网格数据库管理系统可分为两步,第一步是提供一个中间件,将数据库管理系统包装成为网格服务,以便网格应用存取网格数据库。第二步扩展已有的数据库管理系统,让它直接利用网格提供的功能来实现分布式的数据库和相关的网格服务。

1.2.2 网格数据库集成

网格数据库集成就是使用两个或多个网格数据库中的信息,并使用这些信息构建一个大的数据库。它成为目前网格数据管理的研究热点,主要有三种网格数据库集成策略[3]:

虚拟数据库。虚拟数据库是一个联邦数据库,它只有一个联邦模式,所有的用户都无法觉察到多个独立的数据库存在的事实。虚拟数据库在概念上是受欢迎的,但是很难实现。在构造虚拟数据库时,需要考虑其异构透明性、命名透明性、属主和费用透明性、并行透明性和分布透明性。

定制集成。这种方式是指由开发人员自己开发应用程序完成数据库集成。开发人员自己找到熟悉领域的相关数据源,然后将集成任务划分为查询、要执行的程序、中间数据源的构建、显式的数据传输和数据变换,以及存储结果等。网格数据库管理系统应该提供对这种集成方式的支持,使之降低成本、减少时间耗费和错误的发生。

增量集成。虚拟数据库是一个理想目标,定制集成又过于注重细节,增量集成居于二者之间。在增量集成中,开发人员无须完成集成的每一个细节,高级的数据存取和集成组件可以自动完成一些后期的集成步骤。

1.2.3 支持新的网格应用

数据流处理、信息检索和科学数据分析等都是网格应用;其他的网格应用还有网格数据挖掘、网格计算机集成制造系统、网格数字图书馆等。应用能有力地推动技术的发展,而相对比较新的网格应用则可以有力地推动数据库技术的发展,同时也会给传统的数据库技术带来一些新的问题。

1.3 面临的问题

基于开放网格服务体系结构,将现有数据库网格化,主要面临以下4个问题[4]:

(1)数据库应该作为网格中的一种资源并且提供相应的服务,同时必须符合网格相应的标准。

(2)在集成各种数据库系统到网格中时,要考虑到数据库有不同的种类,不同种类的数据库产品在功能和接口上也有很大的不同,如何做到尽可能保留这些系统的全部功能。

(3)数据来自不同的研究者和组织机构,有着各自的数据库模式和数据库设计,网格要共享这些数据,需要中间件来完成异构数据的集成。

(4)网格需要处理三种数据信息:结构化数据、半结构化数据和非结构化数据。

针对上述问题,使用较少的集中控制,同时又要用最高质量的服务来实现跨众多虚拟组织共享的资源之间的高度交互,这是一项技术挑战。

2 网格数据库研究方向

针对上述网格数据库研究内容及面临的问题,主要集中在科学研究上,其研究方向有:

2.1 科学数据分析

网格技术是为了满足科学研究活动的需要而发展起来的,因此在科学研究活动的数据管理方面有它自己的特色,例如:有的数据是从其他数据派生而来,在进行数据分析时需要能够追溯这些数据的来源。从其他数据派生而来的数据称为虚拟数据。

2.2 数据库访问与集成

OGSA-DAI是一个在网格环境下访问和操作数据的中间件库。这个中间件有助于在网格环境中进行数据的存取和集成,它是DAIS工作组制定的网格数据库服务标准草案的一个参考实现[5]。OGSA-DAI的主要目的是在开放网格服务结构的基础上,以网格服务的形式为用户提供数据访问和管理服务。

2.3 数据库查询

随着符合GGF标准的Globus工具包闭以及网格数据库接口标准OGSA-DAI中间件的发展,越来越多的研究关注网格数据库的查询处理,如Polar*和OGSA-DQP是采用网格技术提供数据库查询的两个研究项目。

2.4 数据库性能监控

网格数据库的网格特性主要体现在虚拟化(virtualization)和供应(provisioning)。研究者通过研究使用网格资源监控方法,对其进行了必要的扩展,增加了信息持久化功能,提出了结构清晰可扩展的监控信息模型,实现了网格数据库的性能监控系统DBMg[6]。该系统已经成功地应用于实际生产系统Oracle 10g的性能监控。而如何将监控系统方便地移植到其他类型网格数据库,则是下一步研究的主要内容。

2.5 事务处理

事务处理是数据库管理系统的一个基本功能,主要用于动态访问各种数据库资源时维护数据的一致性,支持多用户的并发访问使用户可以可靠地查询和更新数据库。数据库的事务处理具有长事务、自治、松耦合、动态、潜在失败五项特性,前三项特性使网格数据库事务不同于传统的数据库事务,第四项特性是网格事务有别于Web服务事务的特殊性。而传统的分布式处理模型和Web服务事务处理模型要么不能有效支持长事务,要么不能满足网格的动态性,因此都不能直接用于网格环境中[7]。目前,已有不少研究针对网格的特性提出有效的事务处理模型。

3 网格数据库的应用及分析

随着网格技术的不断发展,网格数据库不仅仅希望应用于科学研究领域,而且应该在金融、商业、交通、预报系统等方面予以环境支持,实现更方便的信息共享和互操作,从而对人们的工作和生活模式产生深远影响。

3.1 金融领域

网格环境下的金融方面的应用包括网络技术和分析能力的优化与提升,需要解决安全问题、数据和存储的虚拟化、有效的数据库系统等典型问题。例如研究实现了在已有的网格技术的基础上研究了构建金融网格中的数据管理策略,设计一种二层分布式的副本管理结构,旨在能提供金融网格中的数据访问效力和改善单点实效等问题;设计出金融网格控制安全模型和金融数据访问系统的实现方法[8]。

3.2 洪水预报领域

在洪水预报领域中存在着许多数据库,这些数据库是进行洪水预报的基础,它们大多数都分布在各地的水库管理部门,在进行联合调度时,必须实时访问各地的水库管理部门的数据库。以网格数据库为基础构建洪水预报系统,为用户提供各种功能和访问相关数据库的途径。基于网格数据库技术的方案,将基于网格服务组件的开发方法和面向服务的体系结构合理结合起来,采用多层体系结构,有效解决了洪水预报应用中存在的数据库访问困难问题[9]。

3.3 电子商务领域

随着电子商务和网格技术的迅速发展,在硬件发展速度跟不上电子商务发展步伐的前提下,对电子商务交易网站的访问及响应速度势必会成为一个难题。在网格环境下,可以结合电子商务网站的数据库技术的现状和应用,对网格数据库在电子商务中的发展前景进行初步的设想及分析,从完善现有数据库和重新建立数据库两种情况讨论实现网格数据库的应用。在网格数据库环境下,每个企业通过一个标准接口就可以将数据库建在自身服务器硬盘上的电子商务网站连入网格中。只要在网上,不管是管理者对网站数据进行查、添、删、改等操作,还是用户要对数据进行查询,都能通过接口访问网格数据库,而且速度更快,效果更好,就像访问本地网络资源一样。这样,企业不需要非常昂贵的服务器,只需要一台普通服务器和一个应用软件或者是网站,就可以实现电子商务交易[10]。

3.4 交通领域

交通数据处理在国内外已经有一定的研究[11]:美国的项目iFloird、欧洲的项目TRIDENT、新加坡的I_Transport平台;国内也有多个院校和研究机构,如北方交通大学、清华大学、同济大学和国家ITS中心等,面对交通数据管理的实施开展了许多有意义的研究工作。从国内外的智能交通的发展现状来看,交通数据(信息)共享对于智能交通发展及其重要,而网格数据库能够较好地实现交通数据的共享,恰好满足了交通数据共享的要求,从而可以在此基础上建立高效、完备的智能交通系统。

除此之外,笔者作为一名教师,认为随着研究的进一步深入,应该在校园网环境下建立网格数据库,实现校园网内资源共享资源复用。校园网既是高校管理工作的平台,又是一个重要的教学及科研工作平台。通过相应的网格数据库技术,开发网格服务,搭建网格平台上的数字化校园,方便广大师生通过统一的服务接口直接访问得到各种校园网资源,实现较好的为教学、管理、科研服务。

4 网格数据库的研究趋势

随着人们将网格技术越来越广泛的应用于数据库中,网格数据库将会得到快速稳步的发展.综合分析国内外在网格数据库方面的研究,普遍认为网格数据库的发展趋势主要有以下几个方面[12]:

(1)将更多地研究网格数据库管理系统。中间件是目前实现网格数据库存取和集成常用的方法,可以预计,未来数据库将会朝着更直接地支持网格技术的方向发展。

(2)将会注重数据库存取与集成的标准。目前尽管网格数据库集成所涉及的问题尚未完全解决,但已经有了网格数据库存取与集成的标准草案,而且根据这个草案可用实际的软件系统实现。

(3)将继续发掘网格应用的新需求。网格上的科学研究有很多数据管理问题需要解决,其中有的问题并非简单地将数据装入数据库就能解决,它们是能够推动数据库技术发展的新问题。

(4)将开展在网格环境下的数据库新技术的研究.这些研究如果放到网格环境下来做,将会收到意想不到的效果。

笔者认为在这些研究基础上,将网格数据库推进向前发展的过程中,以下问题也是值得研讨的:

(1)注重网格数据库的安全问题。数据库系统的安全问题来源于其数据共享问题,而网格数据库则实现了对网格中那些具有分布性、异构性、自治性、海量性等特征的数据资源进行统一的访问与集成,实现互联网上各种数据资源在广域网范围内的共享与协同,这都将增加安全风险。因此,除研究一般的网格安全外,必须特别注意数据保存和数据传输过程中的用户认证、授权和访问控制以及审计和数据完整性等问题,制定网格数据库的安全标准。另外,确保采取充分的措施来应对蠕虫和病毒的影响在网格数据库中也至关重要,因为蠕虫和病毒的影响在网格环境中会得到放大。

(2)增加对网格数据库性能监控的研究。随着网格数据库技术从科学研究领域逐步转向贴近人们生活的新应用,加上传统数据库监控系统不能很好地适应网格数据库的性能监控,因此,增强对网格数据库性能监控系统的研究有利于网格数据库新应用的实施与拓展。

(3)开展网格数据库在人工智能领域的研究。建立在网格数据库平台上的数据挖掘结合网格计算的思想及其技术的优点,能够对广域分布的海量数据进行高效的处理、分析和挖掘,以期将其应用到专家系统等人工智能领域。

5 结束语

在本文中,笔者介绍了网格数据库相关的一些研究工作,总结了当前网格数据库的研究内容、方向及应用,并分析了网格数据库研究趋势。网格数据库系统具有很好的发展前景,但它面临一些新的问题需要解决。相信随着网格技术的日臻成熟和完善,以及数据库访问与集成的技术进一步成熟,网格数据库技术必然跟随着网格技术一同发展和进步。

参考文献

[1]赵红灼,谭国真.网格数据库的改进及在智能交通系统中的应用.2006.

[2]胡国生.基于网格的数据库研究[J].科学技术与工程,2006,6(12):1644-1647.

[3]刘艳玉,吴雅琴.网格数据库访问与集成的研究[J].福建电脑,2007,7:34-35.

[4]张凌,王康,冯欣.网格数据库服务中的需求和解决方案[J].计算机科学,2006.33(12):75-77.

[5]Mario Antonioletti,Malcolm Atkinson,Rob Baxter,Andrew Borley,Neil P ChueHong,Brian Collins,Neil Hardman,Ally Hume,Al Knox,Mike Jackson,Amy Krause,Simon Laws,James Magowan,Norman W Paton,Dave Pearson,Tom Sugden,Paul Watson6and Mar Westhead.The Design and Implementation of Grid Database Services in OGSA-DAI。http://aspen.ucs.indiana.edu/CCPEwebresourc c815watson/c815OGSA-DAI-6.pdf.

[6]翟岩龙,宿红毅,战守义.网格数据库性能监控研究与设计[J].计算机工程,2007,33(20):64-66,69.

[7]梁钰,李陶深.基于移动Agent的网格数据库事务处理架构[J].广西科学院学报,2007,23(4):362-364.

[8]胡蓉,傅明.构建金融网格的若干技术研究.2006.

[9]史涯晴,乔正洪,葛武滇.基于网格数据库的应用系统[J].无锡南洋学院学报,2008,7(1):39-43.

[10]吴翠红.网格数据库的发展及在电子商务中的应用前景[J].上海第二工业大学学报,2006,23(4):328-332.

[11]李瑞敏,陆化普,史其信.交通综合信息平台及其关键技术研究[J].综合运输,2004,8:62-64.

[12]夏玉萍,赵焕平,张莉,李敬文.网格数据库技术的分析及应用[J].重庆工学院学报(自然科学),2007,21(12):98-101.

网格数据库技术 篇2

空间数据库网格体系构造研究

本文基于笔者多年从事地理信息系统的相关研究,以空间数据库为研究对象,深度探讨了网格空间数据库的体系架构,文章首先时空间数据网格产生的`背景进行了简要的阐述,向后分析了网格系统体系结构的组成,最后笔者结合空间数据库的特点,重点探讨了网格空间数据库系统的构建,全文既是笔者长期工作实践的技术总结,同时也是在实践基础上的理论升华成果,相信对从事相关工作的同行有着重要的参考价值和借鉴意义.

作 者:王斌 作者单位:四川大学,四川成都,610065刊 名:科技资讯英文刊名:SCIENCE & TECHNOLOGY INFORMATION年,卷(期):“”(9)分类号:P2关键词:空间数据库 网格 体系

网格环境下的数据挖掘体系设计 篇3

关键词:网格;数据挖掘;数据挖掘网格体系结构;开放网格服务体系结构;Globus

0引言

随着通讯技术尤其是网络的飞速发展,许多领域每天都产生并传递着大量的数据。由于网络资源的地理分布性,这些数据通常表现为种类繁多、来源不同、格式不一、管理混乱等特点,大量的数据可能成为包袱,甚至成为垃圾。因此,为改变“数据过剩”而又“信息贫乏”的困窘,很有必要对数据进行抽象与提取,以发现数据的本质内涵。数据挖掘领域已经成功开展了这方面的研究,一些技术在原始数据中的应用可发现有用的信息,使得最终用户可以更好地理解信息。然而,这些技术通常只在集中或单一情况下才可取得很好的效果,由于数据挖掘任务的复杂性及与分布在多个组织的数据安全原因,数据挖掘的集中解决方案不适合目前地理分布的虚拟组织参与的大量多样的数据。分布式数据挖掘系统虽然提高了多处理器和数据库的使用效率,可加速数据挖掘的实施和数据分布进程,但没有一个通用的策略来配置分布式数据挖掘环境,使每一步处理过程得到最优化。网格计算作为一种新的技术,被认为提供了一个新的框架,在此环境下可成功地进行数据挖掘,解决数据挖掘集中解决方案的局限性。

1网格与数据挖掘研究现状

网格(Cridd)是继Interent和Web之后掀起的第三次网络技术浪潮,也称之为第三代因特网。网格之父Ian Foster认为网格的本质是:共享+协作,即在多个机构动态形成的虚拟组织中共享资源和协同解决问题。网格计算可认为是分布式大规模集群计算和网络分布式并行处理的一种方式,通过它可实现互联网上所有资源的全面连通。包括计算资源、存储资源、通信资源、软件资源、信息资源、知识资源等。所以它一直是高性能计算的—个研究热点。许多应用如协同工程、数据查询、高吞吐量计算及分布式超级计算都将会受益于网格技术的发展。

从20世纪80年代末期以来,网格研究就吸引了众多的注意力。从美国、日本等发达国家到印度这样的发展中国家,都启动了大型网格研究计划。目前,美国已经建成含有一百余个结点的民用网格,每个结点有几十亿到几千亿次的计算能力:美国军方正规划实施“全球信息网格(Global Information Caid)",预计在2020年完成。国内在网格方向上的研究起步稍晚,现已建成国家高性能中心下的国家高性能计算环境(NationalHigh Performance Computing Environment,NHPCE),也称为国家计算网格,其目的在于将向全国范围内各行业和社会大众提供各种一体化的高性能的计算环境和信息服务。在网格计算领域,已成立了Global Grid Forum,eGfid:European Grid ComputingInitiative等国际论坛。目前比较有影响的国际网格研究计划有:Globus,Legion,Information Power Grid,Eurogrid,DistributedTerascale Facility等。

数据挖掘(Data Mining)就是从数据库中抽取隐含的、未知的、具有潜在应用价值的信息的过程。其名字源于它类似于在山脉中挖掘有价值的矿藏。1989年8月举行的第11届国际联合人工智能学术会议上数据挖掘的概念被正式提出。随后数据挖掘的研究成为热点。在国外,数据挖掘技术已经广泛地应用于金融业、零售业、远程通讯业、政府管理、制造业、医疗服务以及体育事业等信息化程度较高的行业。国内对数据挖掘的研究稍晚,1993年国家自然科学基金首次开始支持该领域的研究项目。近年来发展迅速,大多数研究项目是由政府资助进行的,如国家自然科学基金、863计划、“九五”计划等。当前,数据挖掘的研究方兴未艾,随着数据捕获、传输和存储技术的快速发展,大型系统用户将更多地需要采用并行处理系统来挖掘市场以外的价值。因此,网络环境下的数据挖掘技术,特别是在Internet上建立数据挖掘服务器,与数据库服务器配合,实现数据挖掘将成为本世纪数据挖掘的研究热点。

2网格环境下的数据挖掘体系结构设计

2.1开放网格服务体系结构

数据挖掘是一个复杂的处理过程,可通过多种方法加以实现。数据的分布式特征和信息共享的可扩展性使网格成为数据挖掘应用较为合适的方案。开放网格服务体系结构(OpenGrid Services At'cMtecture,OGSA)为网格环境数据挖掘的实施创造了条件。

开放网格服务体系结构是Globus标准与以商用为主的Web Services的标准相结合的产物,是目前最新也最有影响力的—种网格体系结构,其目的就是将Cffid尤其是Olobus的一些功能融合到Web Sevice框架中。OGSA是面向服务的结果,即将所有事务都表示成一个Grid服务,计算资源、存储资源、网络、程序、数据等都是服务,所有的服务都联系对应的接口,通过标准的接口和协议支持创建、终止、管理和透明的服务。

2.2数据挖掘网格体系结构设计

数据挖掘网格体系整体上可采用一种垂直类结构。纵向分三个层次:最底层为通用网格服务,提供网格环境下的通用功能如信息服务、资源管理、安全管理等。中间层为数据网格服务,是面向网格数据管理的服务。如最著名的数据网格GridFTP。最上层为数据挖掘网格服务。面向数据挖掘应用的服务都被包括在该层中,这些服务通常与数据挖掘技术和算法相连接。例如,AprioriG服务就包含了Aprlorl算法功能。该层结构又分三阶段实现数据挖掘任务:即预处理,数据挖掘和后处理阶段,则图1。

GRAM,Grid Resource Allocation MaIIager,远程程序执行的核心,提供实际启动某个特定资源上的作业、检查其状态并在其完成后检索其结果的服务,即提供资源的申请和进程的创建,监控和管理服务;

GSI,Gdd Security Infrastructure,基于标准的PKI(PublicKey lnfrtmcture)技术,为各种安全措施提供统一的框架,提供网格的介入验证服务;

CAS,Community Authorization Service,提供统一认证服务,资源的提供者设置的权限控制策略管理;

MDS,Monitoring and Discovery Servi,提供关于网格中

可用资源及其状态的信息,具有处理资源动态注册、查询和发现等功能;

GridFrP,由Globus工作组开发的一种安全可靠的高性能网格文件传输协议,用来解决网格环境下批量数据的传输和复制,是网格环境中数据管理模块的核心,可为其它上层的功能如RFr、GASS和RSL提供底层支持;

RFr,Reliable File Transfer Service,基于OGSA的服务,提供接口监控和管理两个CaldFrP服务之间第三方数据的传输,即负责接收客户端的传输请求,将请示存入数据库,控制OridFrP服务器进行数据传输,保存传输状态信息,向用户返回传输状态;

RSL,Replica Location Service,副本定位服务,作为数据的分布式注册服务,记录数据的地址信息。并且处理数据物理对象与逻辑对象之间的匹配;

GASS,Global Access t0 Secory Storage,辅助存储全局访问,提供远程文件管理服务;

SDFS。Specific Data Filtering Service,数据过滤服务,由于数据挖掘中包含大量的数据,需通过该服务过滤出有用的数据;

SDRS。Specific Data Repfication Service,数据复制服务,用于处理分布式环境下的数据复制工作;

SDCS。Specific Data Consistency Service,数据一致性服务,维护网格环境下数据的一致性;

SDAS,Specific Data Access Service,数据访问服务,适应网格环境下数据挖掘应用的数据访问与集成网格服务;

SDDS,Specific Data Discovery Service,数据发现服务,提供网格中数据挖掘应用的知识发现;

AprioriG,基于Apriori数据挖掘算法的网格服务,Apriori算法是发现关联规则领域的经典算法。关联规则算法是数据挖掘的+重要研究方向,其侧重于确定数据库中不同领域间的联系,找出满足给定支持度和可信度的多个域之间的相互关系;

SSx:其它服务,定义为在框架其它部分不发生改变的情况下,对网格通用服务或数据网格服务提供的其它特征进行管理的服务;

Sx:其它数据挖掘服务,即不是由基本网格服务提供的数据挖掘服务。如AprioriG服务。

2,3数据挖掘网格服务组合

网格环境下大多数数据挖掘问题都包括了上述数据挖掘网格体系结构中的多个服务。因此,体系应具备服务组合的能力,即具有创建工作流的能力,允许多个服务有序,灵活高效地工作。服务组合可按横向和纵向两种方式创建。

横向组合是指不同功能的服务组合,即被组合的服务的功能是不同的,这种组合依赖于数据挖掘进程划分。

纵向组合是指相同的被复制的服务被组合在一起,这样被组合的服务具有相同的功能,可访问数据的不同部分。数据在位置上是地理分布的,每一个服务绑定到一个专门的数据分区。纵向组合依赖于使用的数据挖掘算法,其主要目的是加速数据挖掘处理过程的实施。

2.4基于Globus的数据挖捆网格体系实施设想

Globus是美国Argonne国家实验室的研发项目,Globus对资源管理、安全、信息服务及数据管理等网格计算的关键理论进行研究,开发能在各种平台上运行的网格计算工具软件,帮助规划和组建大型的网格试验平台,开发适合大型网格系统运行的大型应用程序,Toolkit是Globus最重要的成果。目前,Globus的技术已经在NASA网格、欧洲数据网格、美国国家技术网格等多个项目中得到应用,并已成了网格环境下的事实标准。实施数据挖掘网格体系,可选择Globus作为网格基础设施。扩展网格环境下Weka数据挖掘工具包。Weka是数据挖掘工作中机器学习算法的集成,它包含了所有数据挖掘阶段的工具:数据预处理。数据挖掘(如分类,回归,聚类,联合法则)和数据后处理。体系实施可分服务器模块和客户端模块。服务器模块,负责按工厂模式创建数据挖掘网格服务实例,以执行数据挖掘过程中每一个算法和阶段的功能;

客户端模块,与应用界面相连接,主要负责请求一个网格服务。为实现该功能,客户端模块必须发送封装好的数据到服务器模块,该数据要与运行数据挖掘算法的数据对象相一致。例如,在Aptiori算法中,必须要发送相关的必要参数以构建关联规则。为储存和检索需求对象的状态,实施过程中可使对象串联化,该特征允许Weka可扩展以支持集合与分散,从而访问远程对象。这一数据挖掘过程通过两种服务的组合实现:即AptioriG和GridFTP。第一个服务被用来构建关联规则,第二个服务允许串联对象在节点之间进行传输,属于横向组合。

3结束语

浅析网格数据库的访问与查询技术 篇4

网格是继传统互联网、Web之后第三个大浪潮,可以称之为第三代互联网应用。而数据库在网格环境下的应用,必定带来数据的大量传输、某些数据操作只能在特定节点执行等问题,还有网格环境本身固有的高度异构性(节点执行的快慢不同、网络连接速率不同等,此外对数据库来说,很可能没有一个统一的逻辑视图),这都给数据库的查询带来了新的问题。

目前有很多关于数据库查询方法的研究,一般情况下很多都是针对同构的网络结构。本文就是针对高度异构的网格环境,提出一种数据库系统的查询原型。

2. 网格数据库访问与查询的设计思想

数据库网格查询系统体系结构采用网格组件构架的方式进行设计,参照开发网格服务体系结构OGSA的思想,将元数据管理、分布式查询都抽象为服务,在OGSA-DAI的基础服务和组件的基础上对原有的系统功能进行扩展和完善,提出网格数据库访问与查询系统的原型。网格数据库访问与查询系统功能服务结构表示如图1所示:

本系统由以下几个部分组成:

(l)资源层。资源层包括广域分布的计算资源、存储资源、网络、程序、数据库、仪器设备等[1]。本文中的资源层只涉及网内的多个异构数据库。

(2)网格基础接口和数据集成接口层。网格基础接口包括元数据管理、资源发现与管理、通知机制和网格服务生命周期管理等;数据集成接口层包括数据发送、数据格式转换、数据存储、数据库查询等,这些数据集成接口实现数据库的连接和数据的具体集成过程。

(3)OGSA-DAI基础服务层。这层包括服务组注册器GSR、网格数据服务工厂GDSF、网格数据服务GDS。

(4)用户服务层。是指用户根据自身系统的特性和要求,利用OGSA-DAI提供的接口构建的自定义的服务,实现对异构数据库的管理。

3. 网格数据库访问与查询的实现

3.1 访问与查询内部表达的实现

因为原型基于的OGSA-DAI是用Java语言实现的,所以为了方便调用其功能和便于移植,把SQL查询语句转化为内部表达,我们用类来表达查询语句:

因为查询命令中的列名数量和条件等都不是固定的,所以用Vector来存放,上面的数据targetColumnList、tableList、columnList的元素都可以直接用Java里面的String来表示,布尔变量isNested指出是否是一个嵌套查询;int变量nested Condition指出查询中所用的嵌套表达式的编号。

有了这个内部表达之后,就很容易检查用户输入的表名的合法性了,这个可以通过MDS得到相应的信息。完成分析之后,为了便于下一步的处理,要对表名、属性做一个简单的变换,因为用户给出的表名和属性可能是建立在真实表名之上的虚拟表名。这个变换比较简单,只要查询相应的MDS元数据就可以了。

3.2 分配访问与查询的实现

得到访问与查询的内部表达式之后,就可以把它们分配到访问与查询执行模块执行。有两种情况比较简单:第一,如果访问与查询中涉及的所有表都只是属于一个真实数据库,那么,只要把这个查询直接发到这个此数据库对应的查询执行模块就完成了,不需要作查询的分解;第二,如果访问与查询中的一般条件表达式里面都没有涉及到表与表的连接操作,那么只要分别把每个嵌套子查询依次发到相应的真实数据库对应的查询执行模块,上层查询接受返回结果继续完成这一层的查询,如此反复直到最上层的查询得到完成为止。后面的这种情况比较复杂,涉及访问与查询的数据库是多个,而且表与表之间有连接操作,这时就不能简单地把访问与查询分配到相应的真实数据库就行了,因为这时查询执行模块之间一定要有数据的交换以完成连接操作,这时分配程序要提供给查询执行模块足够的信息,让其可以配合完成连接操作。

访问与查询执行模块负责执行从查询任务分解模块发过来的查询子命令,然后通过CDSF创建CDS访问真实的数据库。因为查询操作是嵌套的,父查询只能在子查询层查询完成之后才可以开始执行,所以在这里,接到父查询的查询执行模块或者在连接操作中负责合并结果的主控模块。分配子查询的过程如下:

把nestedQuery的结果返回地址设成当前模块;

检查tableList,从MDS得到信息,取出每个表名发到对应的执行模块;

把当前节点设为主控模块;//等待子查询结果返回才能开始执行;

3.3 访问与查询执行的实现

访问与查询执行模块负责执行从查询计划生成模块发过来的查询子命令,然后通过GDSF创建GDS访问真实的数据库。在这里,GDS负责提供一个标准的访问真实数据库的接口,并且它对返回的数据做必要的格式转换,转化为标准形式(通常采用XML格式)[2]。以服务的观点来看,GDS提供的是一个数据库服务,但它怎么实现的,那不是上层调用者所关心的,它可能是通过一个关系数据库提供的,或者一个只是通过一个简单的表式的文本文件提供的,甚至是通过一个程序动态产生的,只要它已提供标准的接口和返回符合格式的结果就可以了。

访问与查询执行过程根据查询原型接到查询子命令,可以分为两种情况:

(l)查询命令只涉及到单个数据库,那只要简单地把查询命令转化为符合GDS调用规范的形式,并向GDS发出请求,然后等待返回结果,并把结果送回上层节点。

(2)查询命令涉及到多个数据库,负责这多个数据库查询的查询执行模块中有一个被称为主控执行模块,它负责这组查询执行模块的同步工作,并且它负责接受这组模块的结果,把结果汇总并返回。

当操作涉及到多个数据库时,如何选择传输的策略是一个非常重要的问题,因为网络的传输开销可能是很高的。降低传输开销的一个有效方法是采用半连接技术。

连接操作的重要性在于关系数据库是由许多关系组成的,关系与关系之间的联系是现实世界的抽象。这种联系主要通过连接操作表现出来,因而在二元操作中,连接操作远比其它操作使用得更多,而且是不可避免的。对于网格下动态组成的虚拟数据库更是如此。在这些虚拟数据库中,连接操作的大量数据会引起场地间的传输,它直接影响整个系统。当前对连接操作的优化有两种方法,一种是采用一种半连接技术来减少连接操作的数据传输量,以降低通讯费用;另一种是直接进行连接操作的代价计算,不采用半连接技术。

4. 小结

总之,网格数据库访问与查询系统在网格环境下为用户提供了对地理分布、异构数据库资源的透明访问,为用户提供了单一的逻辑数据库视图和统一的数据库服务接口,使用户可以更方便、更高效地使用网格中的数据库资源。也正因为网格数据库访问与查询系统的分布透明性和异构透明性、命名透明性以及可扩展性等优点,使之得到了广泛的研究与应用。

参考文献

[1]张非,阎保平.一种基于网格服务的数据库元数据管理框架[J].计算机工程与应用,2007(29):209-212.

网格数据库技术 篇5

关键词:分布式数据挖掘;网格计算;网格服务;Web服务资源框架

一、前言

随着科学、工业、商业等领域的发展,出现了大量的TB级甚至PB级的大规模数据集,在这些数据集中包含了大量的对生活、生产、科学研究等具有决策性作用的有用信息,那么如何从这些海量数据中提取信息是人们面临的一个重大的问题。显然,原先的集中式数据挖掘模式已无法满足人们的需求,这就需要探索出面向分布式数据挖掘的体系结构和工具。

二、知识网格

知识网格代表了数据网格的发展,为网格中分布式数据挖掘和抽取提供了高级工具和技术。知识网格是设计和实现分布式高性能知识发现应用环境的体系架构,用于执行网格中的数据挖掘,进行科学发现,发现有用的商业信息。

三、知识网格体系结构

知识网格体系结构是在Globus toolkits网格工具集和服务的基础上定义的。在Globus中,知识网格集成局部服务以提供全局服务。知识网格体系结构保证了数据挖掘工具和底层的网格机制和数据网格服务兼容。

知识网格服务由两层构成:核心知识网格层和高级知识网格层。

1.核心知识网格层

1.1知识目录服务(KDS)。该服务扩展了基本的Globus元数据目录服务(MDS),负责维护知识网格中数据和工具的描述。

要维护从一个特定数据仓库中挖掘出来的数据是不切实际的,但是维护一个已发现知识的数据库是非常有用的。这些信息被存放在知识仓库(KBR)中,但是描述它们的元数据仍由KDS管理。KDS不仅可用于搜索和访问原始数据,也可以发现原先已发现的知识,以便在数据改变时比较给定挖掘计算的输出,或者以递增的方式应用数据挖掘工具。

1.2资源分配和执行管理服务(RAEMS)。该服务用于在执行方案和可用资源间查找最佳映射,以满足应用需求(如计算能力、存储能力、主存、数据库、网络带宽和延迟)和网格约束。在执行方案激活之前,该层管理和协调应用的执行。该层并不是使用KDS和Globus MDS服务,而是直接基于Globus GRAM服务的。

2.高级知识网格层

2.1数据访问服务(DAS)。数据访问服务负责搜索、选择、抽取、转换和交付被挖掘的数据。搜索和选择服务是基于核心知识目录服务的。在用户需求和约束的基础上,数据访问服务自动进行查询和查找由数据挖掘工具分析的数据源。

2.2工具和算法访问服务(TAAS)。该服务负责数据挖掘工具和算法的搜索、选择和下载。描述其可用性、位置和配置的元数据存放在KMR中,并由KDS管理,而算法和工具则存放在每个知识网格结点的本地存储系统中。需要向其他用户导出数据挖掘工具的结点,首先必须使用KDS服务来发布该工具。还有其他的相关元数据,如参数、数据输入输出格式、实现的数据挖掘算法、资源请求和约束等。

3.3执行方案管理服务(EPMS)。执行方案是描述数据源、抽取工具、数据挖掘工具、可视化工具和KBR中的知识结果之间的数据流和交互的图形化表示。最简单的情况是,用户可使用可视化构造工具直接描述一个执行方案。然而,由于DAS和TAAS产生结果的多样性、数据和工具的位置、中间结果表示方法等的差异能产生多种不同的执行方案。因此,EPMS是由用户自行选择数据和程序的半自动化的工具,产生一系列满足用户、数据和算法需求及约束的多种可执行方案。

2.4知识表示服务(RPS)。知识可视化是数据挖掘过程中的重要步骤,它可以帮助用户解释发现的模式。该服务指出了如何产生、表示和可视化抽取的知识模型(关联规则、聚类模型、分类等)。结果元数据存放在由KDS管理的KMR中。KDS不仅用于搜索和访问原始数据,还可查找已经发现的知识。

四、执行管理

1.概念模型表示在知识网格内,UML活动图标形式化方法用于表示应用的概念模型,同时BPEL用于表示执行方案。活动图标表示构成应用逻辑的服务调用的高层次流通,而BPEL表示各种各样的服务实质上是如何调节和调用的。

2.执行计划表示

BPEL通常即可以表示抽象执行计划,也可以表示实例执行计划。在这个两个计划中,服务通过BPEL提供的partnerLinkType元件进行访问。这种元件能够将BPEL工作流与它包括的每项服务的ESDL描述联系起来。这两个执行计划的主要区别是:在抽象执行计划的BPEL文档中,服务的WSDL并不包括服务地点,而它们都包含在实例执行计划。

五、Weka4ws

Weka4ws是一个框架,它扩展了广泛应用的开发式资源Weka工具包,用于支持在WSRF-enabled网格上的分布式数据挖掘。为运行远程的数据挖掘算法和管理分布式计算,Weka4WS采纳了WSRF技术。Weka4ws用户界面支持当地和远程的数据挖掘任务的执行。在每一个计算节点上,一个与WSRF兼容的WS被用来曝光由Weka程序库提供的所有数据挖掘算法。

网格架构发展迅速,所支持的程序的种类日益多样化,可使用的工具也日趋完善和复杂。网格服务的发展方向已从原先的基本的面向计算的服务转到高级信息管理和知识发现服务上来。知识网格系统为分布式数据挖掘和基于网格服务的知识发现定义了一个集成的体系结构。该体系结构推动了地理位置分布的大规模数据集的数据挖掘。

参考文献:

网格技术的研究现状及应用 篇6

关键词:网格;网格技术;网格应用

中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)16-30993-02

The Research Actuality and Applications of the Grid

SUN Ying,LIU Kai-ming

(Zhengzhou Railway Vocational & Technical College,Zhengzhou 450052,China)

Abstract:With the development of the network, a new technology based on the Internet makes a great progress, which is the Grid. As a new generation of Internet technology, the Grid will overcome the shortcomings of the second generation of the Internet,manage the resource of the Internet better and offer more convenient acess to the Internet. This article introduces the concept and the characteristic of the Grid, summarizes some key technologies of the Grid and analyzes its applications and developments.

Key words:Grid;technology of the Grid;the application of the Grid

1 网格概述

1.1从网络到网格

网格被称为新一代互联网,与网络之间是一种发展与递进的关系,是近年来出现并快速发展的新的网络技术,是继互联网之后的又一热点。

互联网始建于上世纪60 年代,进入20 世纪90 年代后,欧洲高能物理研究中心(CERN)发明了超文本格式,大大加速了互联网的发展。这个阶段的互联网被称作第二代互联网。第二代互联网虽然比第一代互联网先进了许多,但它也暴露出了严重的弱点。这主要是因为IPv4 协议32 位的地址空间太小的原因。而且由于Internet 在早期缺乏规划,造成了IP 地址分配“贫富不均”的现象,严重制约了互联网的发展。

针对第二代互联网所暴露的问题,第三代互联网一方面从发展IPv6 来解决,将地址空间由32 位扩展到128 位。此外,IPv6 还能够改善端到端的安全性,有利于移动通信的发展,提高服务质量以及减轻系统管理负担。另一方面,从发展网格技术来克服第二代互联网所暴露问题,更好地管理网络上的资源,将之虚拟成为一个空前强大的一体化信息系统,在动态变化的网络环境中,共享资源和协同解决问题,从而让用户从中享受可灵活控制的、智能的、协作式的信息服务,并获得前所未有的使用方便性和超强能力。

1.2网格概念

一个清晰的网格定义,不仅是学术研究的需要,也是网格流行的需要。究竟什么样的系统才是网格?Foster 提出判定一个系统是不是网格的三个指标。

协调非集中控制资源——网格整合各种资源,协调各种使用者,这些资源和使用者在不同控制域中,比如,个人电脑和中心计算机;相同或不同公司的不同管理单元;网格还解决在这种分布式环境中出现的安全,策略,使用费用,成员权限等问题。否则,只能算本地管理系统而非网格。

使用标准,开放,通用的协议和界面——网格建立在多功能的协议和界面之上,这些协议和界面解决认证,授权,资源发现和资源存取等基本问题。否则,只算一个具体应用系统而非网格。

得到非平凡的服务质量——网格允许它的资源被协调使用,以得到多种服务质量,满足不同使用者需求,如系统响应时间,流通量,有效性,安全性,及资源重定位,使得联合系统的功效比其各部分的功效总和要大得多。

2 网格技术

网格的技术目标是实现互连、互通、互操作,一是实现资源共享,二是实现协作协同。为了达到互连、互通的目的,必须要制定所有人都必须遵从的标准。

由于网格是一个动态性很强、资源构成复杂、安全问题突出的复杂环境,为了达到“互操作”的目标,必须要研究网格资源动态管理、任务调度、数据管理、信息服务、安全机制等等。

2.1网格资源管理

从需求角度看,网格资源管理具有以下特点:

(1)资源搜索速度快。网格资源中,有很大一部分驻留于大型资源库,而在大型资源库中,对共享资源进行搜索的时间开销直接影响时间性能。所以,提高搜索速度对于提高网络资源调用的时间性能至关重要。

(2)信息传输安全性高。网格资源调用时,信息通过Internet 进行传输,传输的安全性是至关重要的。为此,需要有效的安全协议予以保证。

(3)资源传输过程的持续性和稳定性。因为物理网络存在带宽有限、延迟大、传输状态可变以及稳定性差等缺点,所以需要在信息传输过程中,面对网络传输状态的变化自动做出相应调整,即具有很好的自适应性。

2.2网格任务调度

网格资源包括计算资源、存储资源和通信资源。如何使用这些资源高效的完成计算任务是网格的研究重点之一。对于网格用户而言,它向网格系统提交任务,由网格调度程序按照某种调度策略把用户提交的任务分配给网格系统中的可用资源。

任务调度包括任务映射和调度两个方面。任务映射是逻辑地为每个任务匹配一个最合适的机器,以便最小化应用程序的执行时间或完成时间。任务调度则将任务传输到其映射的机器上运行。

2.3网格数据管理

在现代科学研究和应用领域中,大量的数据是重要的资源,例如全球气候模拟、高能物理等应用,其数据量将达到几十TeraByte 至PetaByte 的级别。广泛分布的该领域的用户都希望能够访问和分析这些庞大的数据,但其分析方法往往是计算复杂、计算量大,许多数据分析处理要求千亿次或万亿次规模的计算能力。而现有的数据管理体系结构、方法和技术已经不能满足人们对高性能、大容量分布存储和分布处理能力的要求。因此,人们提出了数据网格,以解决上述应用所面临的问题。

2.4网格信息服务

随着开放网格服务体系结构OGSA 的出现,计算网格的研究已开始向服务网格过渡由于应用的多样性和复杂性,服务网格的研究面临着空前的挑战。当前网格信息服务系统基本上都是对计算资源、数据资源和网络资源等的管理、注册发布及资源发现,但这种方式需要做进一步的改进来适应服务网格的需要。

作为网格核心组件的信息服务,需要有效地对网格资源和服务进行组织和管理,目前国际上比较流行的信息服务系统主要有Globus 的MDS ,R2GMA 和Condor 项目组的Hawkeye,国内有代表性的项目是中国科学院计算技术研究所VEGA 的资源路由器,它们当前主要是面向资源进行组织和管理。

2.5网格安全

网格安全问题是网格计算中的一个核心问题。我们都知道,安全与便利是一对矛盾的结合体。因为在保证网格计算安全性的同时,还必须要尽量方便用户和各种服务的交互与使用。在设计网格安全机制时特别要考虑网格计算环境的动态主体特征及复杂性。要保证网格计算环境中不同主体之间的相互鉴别和各主体间通信的保密性和完整性。基于以上原因,在网格计算环境中,安全问题比一般意义上的网络安全问题的覆盖面更广。在网格环境中,客户机位于不同的地理空间和组织,为保证网格实体(用户、资源和程序)之间的通信安全、防止篡改、实现组织中安全机制方面的互操作性。

3 网格应用研究现状

按照Ian Foster 和Globus 项目组的观点,网格应用领域目前主要有四类:分布式超级计算、分布式仪器系统、数据密集型计算和远程沉浸。

3.1分布式超级计算

分布式超级计算(Distributed Supercomputing)是指将分布在不同地点的超级计算机用高速网络连接起来,并用网格中间件软件“粘合”起来,形成比单台超级计算机强大得多的计算平台。事实上,网格的最初设计目标主要就是要满足更大规模的计算需求,Globus 正是从这类应用起家的。

分布式超级计算方面的典型应用有很多,如:军事仿真项目SF Express,始于1996 年,它将大型军事仿真任务分解到分布式环境中运行,从而在规模上创下了该领域的世界纪录;另一个典型应用是数字相对论,基于Cactus(仙人掌)平台,它利用网格求解爱因斯坦相对论方程并模拟出天体的运动规律。这个应用很有代表性,在2001 年超级计算会议(Supercomputing 2001)上获得了Gordon Bell 奖。

3.2分布式仪器系统

分布式仪器系统(Distributed Instrumentation System)是指用网格管理分布在各地的贵重仪器系统,提供远程访问仪器设备的手段,提高仪器的利用率,大大方便用户的使用。

典型的分布式仪器系统有远程医疗、远程访问贵重仪器等。分布式仪器系统管理各种设备,动态调度资源,提供资源预留服务和自适应网络的拥塞,提供海量数据的实时存贮和检索服务,在设备和远程存贮系统之间提供传输服务,对动态可视化和分析提供支持,支持对远程仪器的控制,促成专业人员之间的协作,各种资源的利用率以及协作水平也能大幅提高。

3.3数据密集型计算

并行计算技术往往是由一些计算密集型应用推动着的,特别是一些带有重大挑战(Grand Challenge)性质的应用,它们大大促进了对高性能并行体系结构、编程环境、大规模可视化等领域的研究。但是, 相比之下, 数据密集型计算(Data Intensive Computing)的应用好像要比计算密集型应用多得多。它对应的数据网格更侧重于数据的存贮、传输和处理,而计算网格则更侧重于计算能力的提高,所以它们的侧重点和实现技术是不同的。

典型的数据密集型计算有欧洲原子能研究机构CERN 所开展的数据网格DataGrid 项目、由实验物理学家与IT 研究人员共同建立的物理网络GriPhyN 等。

3.4远程沉浸

远程沉浸(Tele-immersion)这个术语是在1996 年10 月,由伊利诺州大学芝加哥分校最早提出来的。远程沉浸是一种特殊的网络化虚拟现实环境。这个环境可以是对现实或历史的逼真反映,可以是对高性能计算结果或数据库的可视化,也可以是个纯粹虚构的空间。“沉浸”的意思是人可以完全融入其中:各地的参与者通过网络聚在同一个虚拟空间里,既可以随意漫游,又可以相互沟通,还可以与虚拟环境交互,使之发生改变。

从网格的角度来看,远程沉浸算得上是个“另类”,它与分布式超级计算、分布式仪器系统和数据密集型计算的性质有很大的不同:一方面,虽然它能把高性能计算的结果用一种全新的方式可视化出来,但它本身对高性能计算的要求并不高;另一方面,它并没有集网络上的大量资源于一身。如,EVL 与十几家合作伙伴一起,开发了一些具有远程沉浸特征的虚拟现实应用,有虚拟历史博物馆、协同学习环境、数据可视化协同分析环境等。

4 结束语

本文对网格的概念、特点进行了介绍,对网格关键技术进行了总结。通过对网格的应用研究现状进行分析表明,网格计算将成为今后新一代因特网发展的重点,随着网格技术和标准的不断成熟,网格技术将为人类的科研、生产、生活带来新的便利,是继因特网之后的又一次重大科技进步。

参考文献:

[1]I. Foster and C. Kesselman, editors, The Grid: Blueprint for a New Computing Infrastructure.Morgan Kaufmann, 1998.

[2]I Foster.The Grid: Blueprint for a New Computing Infrastructure, 2nd Edition,MorganKaufmann,2004.

[3]I Foster,C Kesselman,M Nick,et al1 The physiology of the grid:An open grid servicesarchitecture for distributed systems in2 tegration1, http://www.1globus1org/research/papers/ogsa1pdf,2002.

[4]I Foster,C Kesselman1 Globus:A metacomputing infrastructure toolkit1 InternationalJournal of Supercomputer Applications,1997.

网格数据库事务管理策略 篇7

事务管理是传统数据库的关键技术之一[3],同样网格数据库要能充分发挥其协同处理能力,它也离不开事务管理。在相关的研究中人们已经对多数据库系统的事务管理进行了系统的研究[6,7],虽然网格数据库与多数据库在某些方面有类似之处,但是网格数据库的分布地域以及节点数据库的协同处理能力是多数据库系统无法比拟的,也正是由于网格数据库的特殊运行环境网格平台,使得网格数据库的事务管理与其他数据库的事务管理有着不同。本文对网格数据库的事务管理进行了深入研究,给出了网格数据库全局事务与局部事务的概念,并作了相关形式化定义,为了保证全局事务的正确执行,网格数据库全局事务必须串行化,我们给出了网格数据库全局事务串行化的条件,并进行了相关证明。

1网格数据库的事务形式化模型

1.1网格数据库中的全局事务与局部事务

网格数据库由运行于网格平台上的节点数据库和网格平台一起组成,这些节点s1,s2,…,sn上的数据库独立且具有自治功能。网格数据库将在网格环境中所有节点数据库提供的功能服务化,充分利用网格的优势,提供多个数据资源协同工作。一个应用发出请求的时候,网格平台管理系统根据整个网格环境的运行状况,选择合适的一个或多个节点数据库提供的一个服务或多个服务来完成该项请求任务,并返回结果。假设现有一个服务请求Ti,就某一个节点数据库无法来完成或者是为了提高执行这个服务请求的速度,需要网格环境中的多个节点数据库共同完成该项请求(在网格环境中,只要有空闲的服务就提倡充分使用该服务),可将这个服务请求分解成Ti1,Ti2,…,Tin,让网格环境中的所有服务一起来共同完成某个或者某些服务请求。我们称Ti1,Ti2,…,Tin为网格数据库的全局事务,且Ti1,Ti2,…,Tin称为事务Ti的子事务。如果服务请求Ti在网格数据库中由某个节点数据库所提供的服务就能完成,称Ti为局部事务。网格数据库的全局事务与局部事务的关系如图1所示。

1.2网格数据库事务形式化模型

为了给出网格数据库的事务形式化模型,先引入几个操作符:

Ω:事务所有读、写操作的集合。Ω(Ti)表示事务Ti中所有读、写操作的集合;

Θ:完成事务操作所需数据库服务的集合。Θ(Ω(Ti))表示事务Ti中所有读、写操作完成所需要的数据库服务的集合;

Ψ:事务所有读、写、提交、回退操作的集合。Ψ(Ti)表示事务Ti中所有读、写、提交、回退操作的集合。

根据网格数据库中全局事务和局部事务的说明,下面给出与网格数据库事务形式化模型有关的形式化定义。

定义1 节点数据库组成网格数据库的每一个自治的数据库均被称为一个节点数据库。存放在场地i的DBMS中的节点数据库的数据集记为LDBi,网格数据库的数据集用GDB表示。

定义2 局部事务提交给场地j中DBMS(记为DBMSj)的事务Ti是一个局部事务,如果Θ(Ω(Ti))⊆LDBi。在DBMSj上所有局部事务记为undefined,GDBS中所有局部事务记为:

undefined

定义3 一个事务是全局事务(GTi),当且仅当

(i)Θ(Ω(GTi))⊆GDB;

(ii)∀LDBkΘ(GTi)⊄LDBk。

定义3表明全局事务所完成的任务请求,不是由一个节点数据库所提供的服务能完成的。全局事务是所有节点数据库上子服务对应的子事务的并集。

2网格数据库全局事务的串行化

由前面的内容可知,网格数据库中的一个事务操作同样是由一组读写操作组成,事务的结束同样也是以提交或放弃为标志,这些读写操作分别用ri、wi来表示。在某个节点sk上的局部调度用Sk来表示,这个局部调度是由一组在节点sk上执行的局部和全局事务组成。

定义4 如果局部调度Sk包含一个wi操作,在它之后执行的是rj操作,并且在rj执行之前Ti不放弃,我们称事务Ti关于操作wr与事务Tj冲突。如果事务Ti关于操作rw、wr、或者ww与事务Tj冲突,我们说事务Ti与事务Tj冲突。

定义5 对于事务Ti、Tj∈Sk,如果Ti、Tj在调度Sk中冲突,且Ti在调度Sk中提交,那么在Ti提交前Tj不提交,则称调度Sk是严格可恢复调度。它们的调度次序是Ti先于Tj。

对每一个全局事务,全局事务管理器(GTM)首先选择一个能够执行相关局部事务的节点数据库,然后根据这些局部事务执行时是否有冲突来决定该事务是接受、延时还是放弃。由于节点数据库的自治性,可能会出现有的局部事务提交,而有点的局部事务回滚,使得全局事务执行无法得到正确的结果。为了保证结果的正确性,一个比较通用的方法就是实现局部事务的全局可串行化调度。

下面来考虑一个网格数据库系统。如图2所示根据网格数据库全局事务和局部事务的定义,我们知道,这里的事务T1、T2是全局事务,T3、T4是局部事务。在节点s1上的数据库中有数据项a和b,节点s2上的数据库中有数据项c和d。全局事务T1、T2分别定义如下:T1:r1(a)r1(c);T2:r2(b)r2(d)。

节点上的局部事务T3、T4分别定义如下:T3:w3(a)w3(c);T4:w4(b)w4(d)。

假定事务T1在事务T2执行和提交之后执行和提交,那么在两个节点上将产生两个局部调度S1和S2,调度次序分别如下:

S1:r1(a)c1w3(a)w3(b)c3r2(b)c2

S2:w4(c)r1(c)c1r2(d)c2w4(d)c4

最后的结果是,在节点s1上事务T1发生在事务T2之前,节点s2上事务T1发生在事务T2之后,因此事务的全局串行化得不到保证。

为了能够维持网格数据库中事务的全局串行化,我们给出下面的定理。

定理1 对一个网格数据库系统,假设每一个节点数据库上的局部调度都是严格可恢复调度,那么如果网格数据库的全局服务请求(全局事务)所产生的全部子服务(局部事务)像在节点sk上的局部调度Sk一样,存在一个全局的调度次序,那么这些全局事务是可串行化的。

证明 假设这些全局事务不可串行化,并且在每个节点上存在一个全局的调度次序,那么对将在节点sk上执行的全局事务Ti、Tj来说,事务Ti在事务Tj前提交,那么事务根据定义6知,Ti的调度次序先于Tj。又因为每一个节点上局部调度是严格可恢复调度,所以所有的全局事务T1,T2,T3,…,Tr一定存在这样的一个环,事务T1在节点si1上的调度次序先于T2,事务T2在节点si2上的调度次序先于T3,等等,事务Tr在节点sir上的调度次序先于T1。现研究节点sij上的事务Tj和Tk,如果事务Tj先于Tk,则在总的调度次序中Tj先于Tk。因为节点sij上的事务Tj先于Tk,根据定义5知,节点sij上的调度是严格可恢复调度,所以在节点sij上Tj在Tk执行前提交,那么它们在总的事务调度次序中Tj先于Tk。同理可得在总的事务调度次序中T1先于T2,T2先于T3,…,Tr先于T1。这说明全局事务T1,T2,T3,…,Tr是全局可串行化的。

下面我们用一个有向图来表示网格数据库中的全局事务执行过程。

定义6 网格数据库中任意一个全局事务执行过程用一个有向图来表示,它是一个四元组,G=(GT,LT,E),其中:

1) GT是全局事务的集合;

2) LT是局部事务的集合;

3) E是符合下列条件的边的集合:

i) 连接GT中全局事务顶点的边集。对于任意的两冲突的全局事务GTi,GTj∈GT,如果GTundefined,GTundefined分别为全局事务GTi,GTj在节点sk上的局部子事务,那么存在一条从GTi到GTj的E边;

ii) 如果E是连接GT和LT中顶点的边集。对于任意的两提交给节点数据库DBMSk的冲突事务Tki和Tkj,那么边集E中可以包括全局事务顶点间、局部事务顶点间、全局事务顶点与局部事务顶点间的边集。

定理2 网格数据库的事务是可串行化的,当且仅当它的全局事务和局部事务所构成的事务图中无环存在。

证明 1)先证明充分性。即网格数据库的事务图边集E没有环存在,网格数据库事务是可串行化的。因为事务图没有环存在,则由定义可得,对局部事务一定是可串行化的。对事务图中与全局事务相关的点也无环存在,不失一般性,假设全局事务集GT={GT1,GT2,…,GTn},因为无环存在,可对GT1,GT2,…,GTn进行拓扑排序,现假设拓扑排序结果为GTi1,GTi2,…,GTin(i1,i2,…,in是1,2,…,n的一个排列),根据前面的假设,可得网格数据库事务执行过程(GP’)是GTi1,GTi2,…,GTin的一个串行执行的事务经历。将事实上的网格数据库事务执行过程设为GP,下面我们来证明GP≡GP'。设任意两冲突操作p,q,如果p∈GTi,q∈GTj,且p

2) 再证明必要性。即网格数据库事务执行过程是可串行化的,证明事务图中边集无环存在。假设事务图中边集存在全局事务环,设为GTi1,GTi2,…,GTin,…,GTi1,设事务串行执行过程为GP,则由定义可得,∃p∈GTi1,∃q∈GTi2,p在q之前执行,由串行执行的定义得,在GP中,GTi1中所有操作均在GTi2之前执行,以此类推有GTi1的所有操作均在GTin之前执行,同时GTin的所有操作均在GTi1之前执行,这是不符合事实的,因此事务图中无环存在。下面来讨论事务图中边集仅存在局部事务环的情况,设为LT1,LT2,…,LTi,…,LT1,这个环说明存在事务LTi,事务LTi-1有操作在LTi之前执行,且事务LTi也有操作在LTi-1之前执行。而每一个局部事务执行过程均认为是可串行化的,那么LTi和LTi-1应该是全局事务,如果不是这样,那么局部事务执行过程是不可串行化,这与局部事务执行过程串行化矛盾。当LTi和LTi-1为全局事务时,那么又回到刚刚的证明上去了。所以事务图中也应该无局部事务环存在。

3结束语

网格数据库作为一个新兴的研究方向刚刚起步,需要研究和解决的问题还很多,本文主要是从事务管理的角度出发,将网格数据库中的服务事务化,当作事务来进行管理,并对网格数据库中的全局事务和子事务进行了定义,并给出了有关事务的形式化定义。为了保证事务执行结果的正确性,提出了保证事务正确执行的相关定理,并加以证明。今后我们的研究工作是进一步改进和完善网格数据库系统的事务管理理论体系,提高事务管理的效率,研究网格数据库事务管理的算法实现,并在实际系统的开发中加以实现。

参考文献

[1] Foster I,Kesselman C,Tuecke S.The anatomy of the grid.International Journal of Supercomputer Applications,2001,5(3):200-222.

[2]Fedak G,Germain C,Neri V,et al.XtremWeb:Ageneric global compu-ting system.In:Proceedings of the 1st IEEE/ACMInternational Sympo-sium on Cluster Computing and the Grid,2001:582-587.

[3]Breitbart Y,Silberschatz A,Thompson G R.Reliable transaction man-agement in a database system.In Proceedings of ACM-SIGMOD 1999International Conference on Management of Data,Atlantic City,NewJersey,1999:215-224.

[4]Breitbart Y,Georgakopolous D,Rusinkiewicz M,et al.On rigorous trans-action scheduling.IEEE Transaction on Software Engineering,1991.

[5]Elmagarmid A K,Du W.A paradigm for concurrency control in hetero-geneous distributed database systems.In Proceedings of the Sixth In-ternational Conference on Data Engineering,1998.

[6]Lu Zhengding,Yang Yuping,Li Changlei,et al.Maintaining consistencyin multidatabase systems[J].Journal of Computer Research&Develop-ment,2001,38(2):157-162.

基于网格的多数据库系统研究 篇8

1 统一的数据模式和数据操作语言

在网络数据库建立的过程中, 需要采用统一的语言规范格式进行, 根据具体的需求, 采用自下而上的形式建立统一的数据库操作语言, 由于网格数据库的规模是动态可变化的, 需要同时支持各种不同的数据格式, 因此, 网格数据库的建立需要采用统一的数据模式与数据库操作语言进行操作与管理。虽然在网格数据库范围内, 建立统一的数据操作语言比较困难, 但是, 网格数据库的建立需要有统一的基础框架, 为网格的应用建立数据库网格环境是完全可以的, 这就需要在网格数据库的虚拟组织中定义基于网格标准语言应用的语义标准, 就能够在整个网格数据库内制定统一的资源描述标准与统一的访问机制, 实现不同数据之间的调用, 在此基础上可以实现更为高级的数据模式标准与操作语言规范, 然后在统一的数据规范基础上, 实现全局的模式实现对系统数据库的访问。

2 网格数据库系统主要采用的视图管理

网格数据库系统主要是为顶层用户提供了完整的数据全局视图, 能够有效的消解各个局面数据库的数据异构模式, 完成数据之间的共享与调用, 这种全局视图是在系统的全局数据库的基础上进行定义的。由于对全局视图的存取操作要分解为对多个操作过程与操作步骤以及LDB的子操作过程, 而且在操作的过程中还需要对不同的数据模式与查询语言进行转化与调用, 这就需要在网格数据库系统中对物理的全局视图进行保存, 可以加大系统数据库的访问速度, 而物理视图在网格数据库的快速反应中能够快速对数据调用进行响应, 在网格数据库的系统中, 数据库底层关系的修改会导致全局视图的改变, 进而会影响整个系统数据库的数据发生变化, 因此, 保留系统的物理全局视图, 能够方便的对网格数据库进行修改, 保证其底层关系发生变化时, 通过物理全局视图, 能够快速的保证网格数据库与底层关系保持一致。在一般情况下, 全局视图的修改是由底层LDB的结构与关系的修改而造成的, 通过物理全局视图可以快速的把底层LDB的结构变化反应到网格数据库的全局视图中, 如果在数据库的外部数据与内部数据传输的结构不一致的情况下, 通过物理全局视图能够方便、快速的对其进行调整, 满足网格数据库变化的要求。同样的, 在虚拟组织的框架下, 可以通过物理全局视图, 可以有效的对数据库结构的变化进行维护, 提高网格数据库数据调用的稳定性与可靠性。

3 数据的查询和搜索技术分析

分布式查询处理是建立网格数据库的主要目标, 而数据的查询与搜索是数据库网格研究的主要关键技术, 查询优化是分布式查询的关键技术, 数据库的优化器要对若干个等价的查询计划进行分析, 并选择一个比较优化的执行计划进行实际查询, 使得数据库的数据响应能够在最短的时间内完成。在网格数据库中, 动态性是网格数据库的最主要的特征之一, 它将系统数据库的资源进行分配, 但这样会使得网格数据服务的稳定性较差。在出现不稳定的情况时, 可以强制的退出网格数据库, 终止为用户提供服务。网格资源的完全自治性带有很大的随意性, 造成分布式查询优化器在网格中不能快速的获得网格数据资源, 这样也导致了网格数据查询优化的困难, 即使有一些数据资源的统计信息, 在搜索的过程中表现出不完整性, 需要对系统数据库查询方式进行修正, 在网格数据库中采用的是自适应查询技术, 它可以就用户所在的环境中获取相关的信息, 采用迭代的方式进行信息的查询。在网格中, 有时候会出现资源与服务不可以访问的情况, 而且根据网络的需要, 就需要网络根据用户的需求, 采取有选择性的获取信息并反馈给用户。由于网格资源比较丰富, 用户不可能全面了解网格数据库的具体工作过程, 就需要数据库网格采取开放的方式, 在网格资源注册和资源发现的统一框架下, 实现网格数据库的搜索功能。因此, 网格数据库的搜索技术不仅要支持关键字的搜索, 还要支持内容搜索的功能, 包括图书、图像、视频等功能的查询。

4 数据管理中事务的处理方式

在网格的数据管理中, 如何一个资源都是自治的, 网格数据库的服务提供者可以按照自己的意愿, 自由的进入或者退出网格, 形成一个网格的节点失效, 形成网络不稳定的现象, 所以在网格数据库中, 事务处理过程极为复杂, 需要采用专门的数据处理方式, 主要是通过把数据库包装成服务的形式, 通过封装之后, 实现对数据库的实施与共享。这样, 网格数据库对事务问题的考虑只需要针对多个涉及局部事务的LBD服务, 采用相关处理技术将这些事务进行局部合成, 在网格数据库事务管理的过程中, 采用上下文表示和服务的协调与管理的方式进行集中处理, 采用一种松散耦合的、非集中式的数据处理方式来实现事务的处理。

5结语

网格技术与数据库技术的结合, 为分布式数据库的数据搜索等方面的内容提供了全新的研究视角, 通过对网格数据相关技术进行分析, 通过对与多种数据库技术进行对比, 为网格技术与数据库技术相结合的关键技术提供了完善的解决思路。同时, 数据网格技术的快速发展, 对于处在不同地域的数据技术提供了新的信息搜索方式, 也为广域分布环境下的海量数据的共享、搜索、查询等提供了强有力的支持。

参考文献

[1]王家兵, 王能超, 徐正权, 等.一个带有相似性关系的模糊逻辑[J].计算机研究与发展, 2012 (4) .

[2]刘叙华.广义模糊逻辑和锁语义归结原理[J].计算机学报, 2009 (12) .

[3]应明生.模糊逻辑的再扩充[J].计算机学报, 2011 (9) .

网格数据库技术 篇9

1 软件专业网格数据库管理系统

网格提供一个平台,这个平台支持系统化的身份鉴别和授权、资源发现、数据传输、进程创建和调度,以及跨异构平台的动态绑定。在网格提供的这些功能的基础上,可以构造一个安全可靠、具有自主计算能力的高性能网格数据库管理系统。网格数据库管理系统最终将成为网格上的一种重要资源,提供数据管理服务。

软件专业Web服务作为一组面向Internet的共亨功能与数据、支持互操作机制的开放协议和方法.木文以软件专业Web服务为基础,构造了具有四层结构的软件专业网格体系平台。分别为:软件专业资源层、软件专业驱动中间件层、软件专业网格平台中间件展和软件专业Web应用层。

在构建网格数据库管理系统方面,第一步的工作是提供一个中间件,将数据库管理系统包装成为网格服务,以便网格应用存取网格数据库。这种做法的好处是,对已有的数据库管理系统基本上不需要做什么改动。进一步的工作是扩展已有的数据库管理系统,让它直接利用网格提供的功能来实现分布式的数据库和相关的网格服务。图1是一些扩展已有数据库管理系统时可做的工作:

在网格上,用户只需要登录一次,就可以使用网格上所有可用的资源。网格数据库管理系统需要支持网格中这种一致性的身份鉴别和授权机制。很多网格应用程序在提交任务给数据库管理系统后,需要收到一个任务完成的通知,解决这种订阅/发布问题需要结合网格数据库管理系统的触发器机制和网格中的通知服务。

在网格中,查询结果可以被缓存以便传送给第三方,这意味着,在一个不确定的时间内,网格数据库管理系统必须保留结果,然后利用网格数据传输机制传送查询结果到第三方。

在网格中,分布式查询处理可以利用网格的资源发现机制了解网络的状态、获得合适的资源来运行分布式查询或存储中间结果。网格数据库管理系统应提供资源预留功能,以便参与网格中的进程调度。网格数据库管理系统应该能为网格记账和支付标准提供必要的信息,以便用户为资源的使用付费。有些网格问题不是通过简单地扩展已有的数据库管理系统就能够解决的。下面举例子来说明这一点:

“形成性测评系统”是在学习过程中单元的综合性评价系统,教师在系统组织测评试题,学生通过网络随时访问系统,进行测评,测评结果由教师远程通过网络进行评价,同时系统给教师反馈学生学习统计数据,指导教师教学。“网络考试系统”是课程的综合性评价,系统分为中央模块和考点模块,中央模块制作考试题库,各考点模块通过网络获取题库,考点模块按照题库中的抽题策略,自动给每个考生生成一份试卷,考生在线作答,考试结果数据通过网络回收,系统自动进行判分,生成考试成绩和统计数据。“网络考试系统”是集合现代考试理论、方法和现代信息技术手段的智能化网上考试系统,为学生个性化学习提供“灵活、方便、科学、公平”的“个别化考试服务”,是终结性评价系统。学生可以随时、随地的进行课程结业考试。

2 软件专业网格数据库集成

因为网格的主要目标是支持在共享资源上的协同工作,所以网格数据库集成是目前网格数据管理的研究热点。网格数据库集成就是使用两个或多个网格数据库中的信息,并使用这些信息构建一个大的数据库。

目前有三种网格数据库集成策略:

虚拟数据库虚拟数据库是一个联邦数据库,它只有一个联邦模式,所有的用户都无法觉察到多个独立的数据库存在的事实。虚拟数据库在概念上是受欢迎的,但是难以实现。在构造虚拟数据库时,需要考虑以下几种透明性:异构透明性、命名透明性、属主和费用透明性、并行透明性和分布透明性。

定制集成这种方式是指由应用程序自己完成数据库集成。例如,在有的科学应用程序中,开发人员自己找到相关的数据源,然后将集成任务划分为查询、要执行的程序、中间数据源的构建、显式的数据传输和数据变换,以及存储结果等等。网格数据库管理系统应该提供对这种集成方式的支持,使之降低成本、减少时间耗费和错误的发生。

增量集成虚拟数据库是一个理想目标,定制集成又过于注重细节,增量集成居于两者之间。在增量集成中,开发人员无须完成集成的每一个细节,高级的数据存取和集成组件可以自动完成一些后期的集成步骤。

软件专业网格平台中“在线自测系统”“形成性测评系统”“网络考试系统”是相互关联、相互补充、不可或缺的三个系统:“在线自测系统”是自我测试和评价,“形成性测评系统”是在学习过程中单元的综合性评价,“网络考试”是课程的综合性评价。

3 支持新的网格应用

应用能有力地推动技术的发展。研究对于数据库领域来说相对比较新的网格应用可以有力地推动数据库技术的发展。数据流处理、信息检索和科学数据分析等都是网格应用。其他的网格应用还有网格数据挖掘、网格计算机集成制造系统、网格数字图书馆等。目前国内外开展的大部分的网格项目都是网格应用项目,而且多数是服务于科学研究的需要。网格应用会给传统的数据库技术带来一些新的问题,下面以网格上的科学研究(也被称为e-Science)来说明这一点。

在网格上的科学研究中,对数据的使用有两个重要的方面:一方面,数据是数据挖掘和假设检验的信息源;另一方面,共享数据是科学家们协作的基础。网格环境下的数据库管理系统要想成功地服务于科学研究,就必须充分考虑科学研究活动中数据管理的特殊需求。

归档科学研究中的研究结论是在特定时间、特定状态的科学数据库的基础上得到的。如果要验证一个科学结论,就需要将科学数据库的状态恢复到得出结论时的特定状态。因此,需要研究支持快速恢复所有先前状态的归档方法。

注解注解关联新的数据和已有的数据,它可以自动产生,例如自动记录数据的派生关系,也可以由科研人员手工添加以记载他们对数据的理解。无论以哪种方式生成注解,带来的问题都是注解需要以合适的方式进行管理以便共享。

新的存储结构和索引科学研究中要处理海量的科学数据,而且在检索数据时多使用近似匹配,需要研究能够充分利用网格优点的新的科学数据存储和索引方法。一个简单的例子是,在计算能力大的网格结点上构造索引,然后将这些索引分发到计算能力较小的网格结点上以便做并行分布式数据查询。

软件专业网格平台考核贯穿整个学习过程,表现为边学习边考核,全部采用形成性考核。在传统考核中,形成性考核和终结性考核成绩所占的比例是20%:80%,改革后将形成性考核成绩提高到100%。与传统的形成性考核相比,实施全面的形成性考核,可以强化学生的实践能力,促进学生平时学习,推进对学生综合素质的训练和提高,更好地实现课程的考核目标。

摘要:结合网格技术提出了数据库的通用网格平台模型,将数据库系统的资源整合起木:形成一个功能强大的数据库系统,从而方便数据库用户使用和提高数据库系统资源的科用率。

关键词:网格,模型

参考文献

[1]周全,杨庚.网格计算—下一代Internet计算模式江苏[J].江苏通信技术,2004(1).

网格数据库技术 篇10

网格是一组以互联网为基础的新兴技术,它是把整个因特网整合成一台巨大的超级计算机,实现计算资源、存储资源、数据资源、信息资源、知识资源、专家资源的全面共享。数据库技术和其他计算机技术相结合,能够产生新的研究领域,例如数据库技术和面向对象技术相结合就产生了面向对象数据库。代码数据库技术和网格技术相结合,也就产生一个新的研究内容,称之为代码网格数据库。

东营市组织机构代码数据库和扫描库在2001年已经和全省代码数据库共享,通过省中心与国家代码中心数据库联网,目前组织机构代码系统数据量在不断增长,机构代码数据不再是单纯的数字及文件形式的数据,对相关企事业单位的成立证书或批文、法人身份证、验资报告等资料都需要以图片的形式扫描至代码数据库,使组织机构代码数据库增长至TB数量级,而且PB数量级的数据量很快将会变成现实,在Internet环境下通过特定的模式将数据访问和数据分析集成到应用工作流变得越来越不现实。数据网格(data grid)就是根据这种需求提出的一种新的数据管理和存储架构,是网格技术在数据管理方面的应用和实现。

网格代码数据库研究的内容主要是面向现有代码数据库与电子扫描库在网格中的应用,目的是将多个已经存在的、自治的、分布的、异构的以不同代码数据库为存储形式的数据资源屏蔽为逻辑上单一的数据源,从而达到支持虚拟组织用户在共享资源上进行协同工作的目的。

为了促进代码数据网格的发展,网格应用必须支持使用数据库技术进行数据的存储、访问、组织等一系列活动,而且这些活动必须遵循网格的标准,为用户提供统一、方便、透明的访问接口,能大大改善目前的代码数据库存在的缺陷。

目前大量应用仍然依赖数据库系统实现相应的数据存储、访问和组织,大量各种各样的数据以不同的格式存储在不同的数据库中。为了促进数据网格的发展和普及,网格应用必须支持使用数据库技术进行数据的存储、访问、组织等一系列活动,而且这些活动必须遵循网格的标准,为用户提供统一、方便、透明的访问接口。

2 目前有三种网格代码数据库集成策略[3,4]

1)虚拟数据库(Virtual databases)。虚拟数据库是一个联邦数据库,它只有一个联邦模式,所有的用户在使用数据库的时候都无法感知到多个独立数据库的存在。在构造虚拟数据库时,需要考虑以下几种透明性:位置透明性、命名透明性、分布透明性、异构透明性和模式改变透明性。

2)定制集成(Bespoke Integration)。这种方式是指由开发人员自己开发应用程序完成数据库集成。开发人员自己找到熟悉领域的相关数据源,然后将集成任务划分为查询、要执行的程序、中间数据源的构建、显式的数据传输和数据变换,以及存储结果等。

3)增量集成。虚拟数据库是一个理想目标,定制集成又过于注重细节,增量集成采取折中的办法。在增量集成中,开发人员无须完成集成的每一个细节,高级的数据存取和集成组件(如OGSA-DAI)可以自动完成一些后期的集成步骤。

3 网格代码数据库访问与集成框架

本文描述了一种基于包装器—仲裁器(Wrapper-Mediator)[4]方法,即网格数据仲裁服务(Grid Data Mediation Service,GDMS)[5]的数据访问与集成系统的设计与实现,如图1所示,GDMS是网格服务最上层端口,把网格中底层分布式的、异构的数据资源表示成逻辑上虚拟的数据源。此系统以OGSA-DAI[3]网格数据服务为框架,在此基础上开发一层GDMS,从而解决了利用SQL结构化查询语言的子集在全局模式下访问多个数据源,并且可以通过一种标准化的方法组合查询结果。

4 网格代码数据仲裁服务

我们通过一个例子来说明GDMS的设计思想。如果我们要查询来自两个不同企业的职员的信息,如图2所示,假设企业1没有集中管理职员信息的数据库,职员信息分布在两个部门的不同数据库中,职员基本信息存储在职工部门数据源中(图2中的A数据源),职员工资信息存储在财务部门数据源中(图2中的B数据源),学校2把职员的所有信息存储在一个集中数据源中(图2中的数据源C),虽然两个企业存储的职员信息是相同的,但数据结构是不同的。

企业1中的职员姓名字段为name,企业2中职员姓名分为两个字段姓(fn)、名(ln)。为了构造出一个虚拟的数据源(VDS),我们需要执行如下操作:R=(A JO INB)UNIONC在OGSA-DAI中,通常是一个网格数据服务(GDS)表示一个物理数据源,用户通过网格数据服务直接访问物理数据源,而在GDMS系统中用户通过仲裁模式(mediated schema)实现对虚拟数据源的访问,通过一个定义了虚拟数据源和物理数据源之间映射信息的映射模式(mapping schema)把从不同数据源的查询结果组合成一个查询结果,从而使用户可以透明地访问地理上分布的、异质的数据源。

5 GDMS的实现

OGSA_DAI已经实现了网格数据服务的基本功能,为了避免重复性开发,我们把GDMS集成到OGSA_DAI的网格代码数据服务的参考实现中去,以提供对虚拟数据源的访问。网格数据服务是OGSA_DAI提供的主要服务,使用户可以以XML形式的文档对象模型访问单个的物理数据源,为了实现GDMS的功能,我们在OGSA_DAI网格数据服务核心引擎的基础上,设计出新的网格数据服务引擎,主要由以下三个部分组成:

1)查询重构器

用户提交的查询通过mediated schema被解析并转换为一个内部表达式,即转换为对实际物理代码数据源的操纵。

2)查询优化器

根据系统的物理状态对用户查询进行优化。系统或者用户在访问活动中有可能建立不同的副本,不同用户则出于不同考虑,可能要求使用不同位置的副本获取数据,原则是使访问时间尽可能短。

3)查询执行引擎

具体实现mapping schema中定义的各种操作。我们采用迭代器模式(iterator model)[6]实现查询执行引擎,每个操作被实现为一个迭代器,并且所有的迭代器都具有相同的接口,采用这种模式具有两个优点,一个是任何两个迭代器都能插接在一起,另一个是支持查询结果从一个操作到另一个操作的管道化输入。

6 结论

本文分析了网格代码数据库产生的原因,着重对网格代码数据库访问与集成进行了研究,提出了一种基于网格代码数据仲裁服务的数据访问与集成系统的结构,该系统提供了适应各种用户需求的全局数据视图,使用户能够在网格环境中动态、灵活地访问多个分布式的、异构的数据源;同时也提供了与传统的GDS一致的接口,使其能够很容易的集成到现存的各种应用中。

参考文献

[1]Ian Foster and Carl Kesselman.The Grid2:Blueprint for a New Computing Infrastructure,2003,10(3):2-6.

[2]I.Foster,C.Kesselman,S.Tuecke.The Anatomy of the Grid:Enabling Scalable Virtual Organizations.International J.Supercomputer Appli-cations,2003,15(3):200-222.

[3]Amit P.Sheth and James A.Larson,Federated Database Systems for Managing Distributed,Heterogeneous,and Autonomous Databases,ACM Computing Surveys,Vol.22,2004,9(3):350-355.

[4]B.Segal,L.Robertson,F.Gagliardi,F.Carminati.Grid computing:the European Data Grid Project,IEEE Nuclear Science Symposium andMedical Imaging Conference,Lyon,15-20 October 2000,2(5):189-196.

网格技术的发展与数字图书馆建设 篇11

【关键词】 网络;数字图书馆;管理

前言

随着计算机技术、通信技术和网络技术的迅速发展,需要存储和传播的信息量越来越大,因而,基于网络环境下共建共享的可扩展的知识网络系统,具有超大规模的、分布式的、便于使用的、没有时空限制的、可以实现跨库无缝链接与智能检索等特点的数字图书馆应运而生。而在信息数据化的发展过程中,网格技术无疑起到推波助澜的作用,使数字图书馆建设上了一个更大的台阶,解决了很多建设进程中的不可逾越的问题,保证了数字图书馆的运用更加稳健和扩大。本文就对基于网格技术的数字图书馆建设做一下简单探讨。

1网格技术的涵义

Ian Foster 曾在《网格:21 世纪信息技术基础设施的蓝图》一书中这样描述网格:“网格是构筑在互联网上的一组新兴技术,它将高速互联网、高性能计算机、大型数据库、传感器、远程设备等融为一体,为科技人员和普通老百姓提供更多的资源、功能和交互性。互联网主要为人们提供电子邮件、网页浏览等通信功能,而网格功能则更多更强,让人们透明地使用计算、存储等其他资源。”

网络技术是从1990年代中期发展起来的新技术,它把互联网上分散的资源融为有机整体,实现资源的全面共享和有机协作,使人们能够透明地使用资源的整体能力并按需获取信息。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等。当前的互联网只限于信息共享,网络则被认为是互联网发展的第三阶段。网络可以构造地区性的网络、企事业内部网络、局域网网络,甚至家庭网络和个人网络。网络的根本特征并不一定是它的规模,而是资源共享,消除资源孤岛。

网格的主要任务是在动态变化的网络环境中共享资源和协同解决问题。网格对现有互联网进行友好管理,把分散在不同位置的资源虚拟成一个空前强大的信息系统,实现各种资源的全面共享。

2网格技术在数字图书馆建设中的应用

数字图书馆是基于网络环境下共建共享的可扩展的知识网络系统,是超大规模的、分布式的、便于使用的、没有时空限制的、可以实现跨库无缝链接与智能检索的知识中心。数字图书馆通过数字技术进行信息资源的组织和管理,能够储存海量信息,用户可以通过互联网络高效方便地进行查询、检索服务。当前数字图书馆建设过程中遇到最大的问题就是国家图书馆、各地区各行业图书馆的技术并不兼容,目前没有统一的标准,各个资源库之间不兼容,很容易造成国家在人力、物力上的浪费,重复的数据采集与存储是单一数据库模型面临的主要问题。网格技术为数字图书馆建设可以提供有力的保障。

2.1网格技术保证了资源的共享和协作

数字化图书馆建设可以实现文献资源共建、共享服务体系。网格技术可以保证有效实现文献信息资源共享,整体提高文献资源处理、传递与利用、反馈效率。通过数字化图书馆建设,必将有效整合本区域内人文、学术、科研、教学、教育等特色鲜明且又极具价值的数字资源,不但为本区域社会、教育、科学、文化、经济的发展做出贡献,也将为信息化建设做出重要贡献。

2.2网格为数字图书馆构造统一的平台。网格技术因其平台和资源的共享性,可以大大降低建立网站和提供网络服务的成本。网格将分布在各地的计算机、数据、信息、知识等组织成一个逻辑整体,此基础上运行各自的应用网格,为数字图书馆提供各种一体化信息服务的信息基础设施。如用户要寻找某一信息,不需要像在因特网那样,手动去广袤的信息空间去搜索,只需要通过单一入口访问,就可以看到所有的信息。

2.3网格技术应用在数字图书馆各个应用和支撑层面都意味着可以利用更多的资源来为自身服务,而在这个过程中,由于各类不同系统的存在,迫使各个数字图书馆必须将“统一”格式作为一项重要工作,设法达到网格系统的灵活性、简单性、低成本的最佳状态。

2.4网格技术创建的信息平台所有信息是分布式、协作和智能化的,因此可以保证数字图书馆的服务个性化。网格为用户提供的是智能化和个性化服务,提供一致化界面、服务灵活性、定制的个性化服 务。数字图书馆也要求为用户提供个性化的主动服务,实现信息定制、信息的主动推送。

3基于网格的数字图书馆建设的展望

信息网格作为因特网的第三次浪潮,对于全面解决网格的资源共享、人机结合和信息安全等问题将有重大的指导意义,也将为解决复杂系统问题的综合集成技术打下坚实的技术基础。随着信息网格技术的不断推进,数字图书馆将不再仅仅是一个独立的资源系统或者是一个基于数字化资源的信息检索、信息服务系统,而是一种以用户为核心来聚合信息资源、信息服务、信息利用活动的动态机制,其最终目标就是着力于支持用户利用信息、提炼知识、解决问题,成为用户工作、学习环境的有机结合。因此可以说网格技术在图书馆领域的应用将是全世界图书馆发展的一个趋势。

参考文献

[1] 黄晓斌,邓爱贞.网格技术的发展与数字图书馆建设[J].情报资料工作.2003,05.

[2] 金明,单广荣,杨欢欢.网格技术的发展与数字图书馆的建设[J].甘肃科技纵横.2009,04.

[3] 于喜彥.网格技术的发展与数字图书馆建设[J].黑龙江科技信息.2010,02.

[4] 刘月学.基于网格的数字图书馆服务研究[D].郑州大学.2012,05.

网格环境下数据集成模型研究 篇12

英国e-science核心项目OGSA-DAI[2,3]是数据库网格研究领域的代表作,OGSA-DAI是一种数据访问和集成的中间件平台,它主要实现了对多种数据库的服务化访问,使得数据库能够用网格服务的形式对外共享数据。利用这些服务,虽然可以使客户端通过统一接口对不同的数据资源进行访问,但没有真正实现对异构数据源的数据集成[4]。另外,在网格环境下,如何对分布异构的数据资源动态的组成一个虚拟数据库以完成一个特定任务、如何解决虚拟数据库对分布异构的数据资源信息了解匮乏的问题,这些都需要做进一步研究。本文在详细分析了基于Web Service的OGSA架构[5]和OGSA-DAI的构架、内部流程的基础上,给出一个基于OGSA-DAI的数据集成模型,该模型用于解决网格环境下异构数据源数据集成和分布式查询处理的问题,并且在此基础上利用元数据管理来解决客户端对异构分布的数据资源信息了解匮乏的问题,从而在网格环境下为用户提供一种直观的、可视化的虚拟数据库视图环境以及高度透明的分布式查询环境,以便于上层用户透明地使用。

1 网格环境下数据集成的关键技术研究

1.1 网格环境下数据源的访问和集成

图1给出了OGSA-DAI对数据源访问的执行流程。

OGSA-DAI提供了数据存取和集成的基本的接口,还提供了扩展性机制,从而可以向OGSA-DAI添加更多的用户定义的服务。客户端发送执行文档给数据服务,执行文档中描述了需要数据服务资源执行的活动,这些活动可以包括对数据源的查询、更新、数据转换、数据传递操作。然后,数据服务把执行文档转交给代表实际数据源的数据服务资源。数据服务资源对执行文档进行解析并执行指定的活动。当活动是对数据源执行一个SQL查询语句时,数据服务资源创建描述请求结果的响应文档,其中包含了执行本次查询的结果集。最后,把响应文档通过数据服务返回给客户端[2]。

目前,数据集成方法主要分为模式集成方法、数据复制方法以及综合型集成方法。模式集成的基本思想是在构建集成系统时将各数据源的数据视图集成为全局模式,使用户能够按照全局模式透明地访问各数据源的数据。联邦数据库和中间件集成方法是两种比较典型的模式集成方法。数据复制方法是将各个数据源的数据复制到与其相关的其它数据源上,并维护数据源整体上的一致性。比较常见的数据复制方法是数据仓库方法。综合型集成方法是把上述两种方法综合起来使用,以突破两种方法的局限性[6]。在本文中使用综合型集成方法来完成数据集成,由于各个异构数据源的元数据相对比较稳定,同时客户端对各个异构数据源的访问比较频繁,故客户端元数据库采用数据复制方法把各个异构数据源的元数据进行集成。客户端对异构数据源数据的访问,考虑到被集成的系统规模可能比较庞大且数据更新频繁,所以可采用中间件集成方法在全局模式下进行集成。

1.2 利用元数据对数据进行管理

元数据是关于数据的数据。在OGSA-DAI提供的查询服务中,对描述数据资源的元数据信息进行了内省,这样虽然不必专门对元数据进行管理,却使得描述数据资源的信息匮乏。用户在事先不知道数据源的情况下,需要多次与数据源进行交互才能得到数据内容。所以我们在模型的用户应用层和数据集成层之间建立了一个元数据库,该数据库中存放了所有已注册数据库的基本信息、数据库中的所有表信息和字段信息。同时,我们在用户应用层也建立了一个元数据管理模块来负责对各个分布、异构的数据源的元数据信息进行收集、发布和维护。有了这种配套机制,用户可以很方便地了解到各个数据库的信息以及表的结构、字段的类型、表间的关系等信息,并给分布式查询优化带来很大的方便。

1.3 分布式查询处理的设计、分解和优化

网格环境下分布式查询处理最大的特点是自适应性,它必须能充分利用并行计算能力和网格资源动态演化的特性[7]。在OGSA-DAI中,提供了基本服务接口,实现与存储资源之间的交互,对物理数据资源进行统一访问。对于用户来讲,关心的是通过一种简单、方便的机制去得到他想要的数据,不关心网格环境下分布式查询的复杂性,更不会主动地把分布式查询人工的分解为多个对单库的查询。所以在网格应用中,分布式查询操作应该在动态组成的虚拟数据库中进行,从而屏蔽不同关系数据库及其运行结点的异构性[8]。本文中采用网格服务和元数据服务来为客户端用户提供SQL查询服务,用户对虚拟数据库的操作可以像操作一个真实的数据库一样来进行。

2 网格环境下数据集成模型设计

本模型是基于OGSA-DAI中间件进行设计的,是建立在OGSA-DAI对网格环境下异构数据源的访问能力之上的。为了实现用户透明的访问网格环境下的异构数据源,可通过查询客户端本地元数据库中存储的异构数据源的元数据信息,把客户端的查询请求分解、优化为多个对单数据源的子查询请求。然后把各个优化后的子查询分派给OGSA-DAI执行,待OGSA-DAI执行完后,由数据合成模块接收OGSA-DAI执行的各个查询的结果,并利用本地临时数据库作为缓存,按照查询计划合成结果,并把合成结果返回给客户端,客户端利用本地元数据库和查询计划构建出虚拟数据库视图供客户端用户使用。图2是基于本模型设计的体系结构图。

2.1 数据层

通过OGSA-DAI访问的各种数据资源,本模型中主要包括了各种关系型数据库,例如:My Sql、IBM DB2、Microsoft SQL Server、Oracle、PostgreSQL。

2.2 支撑环境层

该层是本模型的网格支撑环境,提供的网格接口包括资源发现与管理、通知机制和网格服务生命周期管理、用户认证和授权、容错、安全等,由Globus Toolkit实现。OGSA-DAI模块负责以网格服务的形式对各种不同数据库的访问,这些服务包括GDSR(网格数据服务注册)、GDSF(网格数据服务工厂)、GDS(网格数据服务),利用这些服务实现数据源的注册、发现、定位、访问及结果的返回。

2.3 数据集成层

该层是本模型的核心层,集成了下述多个核心功能模块。

(1)分布式查询分解、优化模块对用户提出的SQL查询语句进行分析、分解、优化以形成一个或多个对单库的SQL查询语句。在此通过对本地元数据库的交互来完成查询计划的生成,并利用优化算法决定那些查询应该先做,那些应该后做。

(2)子查询分派模块把当前分解出的子查询分派给OGSA-DAI执行,并提供当前各个子查询执行状态的查看接口。子查询的执行和状态查看是间接地通过OGSA-DAI提供的服务来完成。例如:GDSR服务可使应用程序动态找到欲访问数据库,通过GDS服务的相应活动可以得到当前的执行情况。

(3)数据合成模块负责接收OGSA-DAI执行的各个查询结果,并利用本地临时数据库作为缓存,按照查询计划和所涉及的元数据库信息来进行结果的合成。

(4)元数据抽取模块负责从指定数据库中提取元数据,该功能的实现是通过扩展GDS服务来实现,提取之后,进行格式转换并由元数据管理模块完成对元数据库的更新。

(5)数据格式转换模块OGSA-DAI执行查询后,返回包含了查询结果的响应文档。该文档中的结果集是以XML格式来进行描述的,需要在本模块完成XML格式到行集的转换。

(6)数据库自动发现和注册实现局域网内或域内带有某些特征或授权的数据库的自动发现和注册。但一般使用手动注册的方式完成数据库注册和元数据的提取工作。

(7)数据集成总控制器负责与用户应用层的交互,如:接收SQL查询、发送结果集,并协调各个组件的交流和执行过程。

2.4 用户应用层

完成虚拟数据库视图环境的构建,查询结果的显示、元数据的管理。

(1)数据显示模块负责虚拟数据库视图的建立,以及用户结果的显示与转存,还包括用户SQL查询的保存与传递。结果的显示分为两种,一种是Table格式,另一种是XML格式

(2)元数据管理模块负责建立和维护元数据。包括元数据格式定义和表示、插入新注册数据库的元数据、更新元数据、删除元数据,以及向GDSR订阅元数据变动通知。通知是OGSA-DAI提供的一个服务,当数据库元数据有变动时,该模块能够及时得到消息并做出相应处理。

(3)本地SQL查询语句解析器位于数据显示模块和元数据库之间的一个中介模块,负责解析构建用户视图时的SQL语句。SQL查询语句往往涉及到多个数据库的查询,此处利用本地元数据库来实现SQL语句的解析,避免了访问远程数据库所造成的耗时。

3 工作流程

分布式查询和数据集成的工作流程如图3所示:

(1)从数据显示模块接收用户的SQL查询命令,分布式查询分解、优化模块与元数据库交互,确定要访问的数据库及其对象是否可用,然后,对查询任务进行分解、优化以形成高效的一个或多个子任务。最后把子任务提交给子查询分派模块。

(2)子查询分派模块按照子任务的接收顺序依次进行执行。期间,可以通过指定的服务查询各个子任务的执行情况。

(3)子查询分派模块现在充当了OGSA-DAI的客户端。客户端与GDSR通信,查找满足需求的服务工厂。

(4)把满足要求的服务工厂的GSH(网格服务句柄)返回给客户端。

(5)客服端可以查询GDSF的配置信息,调用Create Service()方法来创建GDS实例。

(6)GDSF创建GDS实例,并把该实例的GSH返回给客服端。

(7)用户把客户端生成的执行文档(其中包含了要执行的SQL语句,格式为XML)交付给GDS实例。

(8)连接数据库Database1,并将查询结果返回给GDS实例

(9)把处理结果以响应文档的形式发送给数据合成模块。

(10)同样的过程,可以访问Database2,并把结果也返回给数据合成模块。

(11)把XML文档转换成行集(或表的形式),并在数据合成模块合成数据,期间,可能需要暂存数据。

(12)把合成的结果传递给显示模块显示或转存。

4 结束语

本文介绍了网格环境下数据集成的关键技术,详细论述了如何在网格环境下利用OGSA-DAI进行数据集成,给出了模型的体系结构和实现方法,阐述了其工作流程,并利用与客户端元数据库交互的方式解决了用户对目标数据库信息了解匮乏的问题。

摘要:基于OGSA-DAI给出了一个用于解决网格环境下异构数据源数据集成和分布式查询处理的数据集成模型,在此基础上利用客户端元数据库解决了用户对目标数据库信息了解匮乏的问题,从而为用户的分布式查询处理提供了一种直观透明的、可视化的虚拟数据库视图环境。

关键词:数据集成,OGSA-DAI,元数据,网格计算

参考文献

[1]Foster I,Kesselman C.The grid2:blueprint for a new computing infras-tructure[M].Morgan Kaufmann,2004.

[2]OGSA-DAI WSRF2.2User Guide[EB/OL].http://www.ogsadai.org.uk/documentation/ogsadai-wsrf-2.2/doc/

[3]Atkinson,M.,Karasavvas,K.,Antonioletti,M.,Baxter,R.,Borley,A.,Chue Hong,N.,Hume,A.,Jackson,M.,Krause,A.,Laws,S.,Paton,N.,Schopf,J.M.,Sudgen,T.,Tourlas,K.and Watson,P.A new Architecturefor OGSA-DAI[EB/OL].http://www.ogsadai.org.uk/documentation/presentations/NewArchitecturePresentationAHMSep05MPA.pdf,2005-09-27.

[4]蒋明亮,傅秀芬,侯文国,肖树腾,李志清.基于OGSA—DAI的数据集成模型研究[J].微计算机信息,2006(11X):204-206,214.

[5]I.Foster,H.Kishimoto,A.Savva,D.Berry,A.Grimshaw,B.Horn,F.Maciel,F.Siebenlist,R.Subramaniam,J.Treadwell,J.Von Reich.The Open Grid Services Architecture,Version1.5[EB/OL].http://www.ogf.org/documents/GFD.80.pdf,2006-09-05.

[6]陈跃国,王京春.数据集成综述[J].计算机科学,2004,31(5):48-51.

[7]M.R.Martinez,N.RoussPoulos.MOCHA:A Self-extensible Database Middleware System for Distributed Data Sources.Porceedings of the ACM SIGMOD International Coneference on Management of Data[C].IEEE Press,2000(3):213-214.

上一篇:存在的风险下一篇:公路施工中质量控制