(计算机软件与理论专业论文)面向空间数据集成的xquery语言与执行引擎技术的研究.pdf_第1页
(计算机软件与理论专业论文)面向空间数据集成的xquery语言与执行引擎技术的研究.pdf_第2页
(计算机软件与理论专业论文)面向空间数据集成的xquery语言与执行引擎技术的研究.pdf_第3页
(计算机软件与理论专业论文)面向空间数据集成的xquery语言与执行引擎技术的研究.pdf_第4页
(计算机软件与理论专业论文)面向空间数据集成的xquery语言与执行引擎技术的研究.pdf_第5页
已阅读5页,还剩76页未读 继续免费阅读

(计算机软件与理论专业论文)面向空间数据集成的xquery语言与执行引擎技术的研究.pdf.pdf 免费下载

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

文档简介

摘要 数据是地理信息系统( g e o g r a p h i ci n f o r m a t i o ns y s t e m ,简称g i s ) 最根本的 基础,同时也是g i s 项目中最昂贵的部分,一般占整个系统建设成本的5 0 一 8 0 。一方面,随着g i s 的广泛应用,社会上积累了大量的g i s 数据资源;而 另一方面,众多的g i s 系统成为信息孤岛,各区域、各应用部门的g i s 数据在 数据结构、数据模型、数据格式等方面都存在着很大的差异,如何从网络上获 取这些地理信息资源,避免地理信息资源的重复性建设,实现不同部门之间的 资源共享就成为一个迫切需要解决的问题。 鉴于此,本论文研究地理信息系统的数据集成技术,研究如何建立一个能 够支持分布式空间数据集成应用和共享的框架,把网络环境中的多个空间数据 库以信息集成的方法联系起来,实现空间数据的共享即:将物理上分布在 各处的空间数据库,在逻辑上集成为一个整体。一方面为了共享异构数据源, 使得处于异构环境、分布存放的各种空间数据库能够协同工作,互相配合、互 相补充,达到既相互独立,又能互操作的目标;另一方面,也是为了满足人们 日益增长的对地理信息的需求,让用户能够快速准确地定位、获取并使用他们 所关心的地理信息资源。 本论文的主要研究内容是面向空间数据集成的x q u e r y 查询引擎系统的设 计与实现。该系统采用基于x m l 的g m l 标准和x m l 模式作为空间信息集成 的通用数据模型,采用支持网络多数据源和空间数据处理的扩展x q u e r y 语言 作为空间信息集成的通用数据查询语言,从而形成完整的空间信息集成模型。 论文研究的侧重点是设计一种简单的函数式x m l 查询语言一一f x q l ( f u n c t i o n a lx m lq u e r yl a n g u a g e ) 作为查询计划的描述手段,以支持空间查 询语言到查询计划的变换:针对空间信息集成的需求来设计查询原语,进而设 计并实现负责解释执行f x q l 表达式的执行引擎。 本论文通过研究面向空间数据集成的x q u e r y 查询引擎系统的设计与实现, 消除了各种存储在不同数据源中的空间数据之间的差异,以透明的方式向用户 一! 一,。一圣,! ;些奎兰堡圭兰i i ! :兰。一,。 提供了一致的访问接e l ,实现了空间数据资源的共享与互操作。 关键词空问数据集成:x m l ;x q u e r y ;m e d i a t o r - w r a p p e r ;函数式语言 a b s t r a c t d a t ai st h ef o u n d a t i o no fg e o g r a p h i ci n f o r m a t i o ns y s t e m ( g i s ) ,a n di ti st h e m o s te x p e n s i v ep a r to fag i sp r o j e c t ,a p p r o x i m a t e l yo c c u p i e s5 0 一8 0 o fa l lc o s t f o rb u i l d i n gag i sp r o j e c t o no n eh a n d ,a l o n gw i t ht h ee x t e n s i v ea p p l i c a t i o no fg i s , ag r e a td e a lo fg i sr e s o u r c e sh a v ee m e r g e d o nt h eo t h e rh a n d ,m a n yg 1 ss y s t e m s b e c o m ei n f o r m a t i o ni s l a n d ,g i sd a t ao fe a c hr e g i o na n da p p l i c a t i o nd e p a r t m e n th a v e m u c hd i f f e r e n c ei nd a t as t r u c t u r e ,d a t am o d e la n dd a t af o r m a t h o wt oa c c e s st h e s e g e o g r a p h i ci n f o r m a t i o nr e s o u r c e s ,a v o i dr e d u n d a n tb u i l d i n go ft h e s er e s o u r c e sa n d i m p l e m e n t r e s o u r c es h a r i n ga m o n gd i f f e r e n td e p a r t m e n t sb e c o m e sa n u r g e n t p r o b l e mn e e d e dt ob es o l v e d i no r d e rt os o l v et h i sp r o b l e m ,t h i sp a p e rs t u d i e st h ed a t ai n t e g r a t i o nt e c h n o l o g y f o rg i s ,a n ds t u d i e sh o wt ob u i l daf r a m e w o r ks u p p o r t i n gd i s t r i b u t e ds p a t i a ld a t a i n t e g r a t i o na p p l i c a t i o na n ds h a r e ,c o n n e c tm a n ys p a t i a ld a t a b a s e si ni n t e r n e t e n v i r o n m e n tw i t hi n f o r m a t i o ni n t e g r a t i o nm e t h o d ,a n di m p l e m e n tt h es h a r eo f s p a t i a ld a t a ,i e i n t e g r a t e sm a n ys p a t i a ld a t a b a s e si nd i s t r i b u t e dp o s i t i o nt oal o g i c a l w h o l e o noneh a n d ,t h ep u r p o s ei ss h a r i n gh e t e r o g e n e o u sd a t as o u r c e s ,a n dm a k i n g t h a te a c hs p a t i a ld a t a b a s ei nh e t e r o g e n e o u se n v i r o n m e n ta n dd i s t r i b u t e dl o c a t i o n c o u l dc o o p e r a t ew i t he a c ho t h e r , a n da c h i e v et h eg o a lo fb o t hp r e s e r v i n gt h e i rl o c a l i n d e p e n d e n c ea n dp r o v i d i n gt h ei n t e r o p e r a b i l i t y o nt h eo t h e rh a n d ,t h ep u r p o s ei s s a t i s l y i n gt h ei n c r e a s i n gr e q u i r e m e n to fp e o p l ef o rg e o g r a p h i ci n f o r m a t i o n ,a n d m a k i n gi tp o s s i b l ef o r u s e rt o q u i c k l ya n da c c u r a t e l yl o c a t e ,r e t r i e v ea n du s e g e o g r a p h i ci n f o r m a t i o nr e s o u r c e st h e ya r ei n t e r e s t e di n t h i sp a p e rm a i n l ys t u d i e st h ed e s i g na n di m p l e m e n t a t i o no fx q u e r y e n g i n ef o r s p a t i a ld a t ai n t e g r a t i o n t h i ss y s t e mu s e sg m ls t a n d a r db a s e d0 ux m la n dx m l s c h e m aa sc o m m o nd a t am o d e lo fs p a t i a li n f o r m a t i o ni n t e g r a t i o n ,u s e se x t e n d e d x q u e r yw h i c hs u p p o r t si n t e m e tm u l t i p l ed a t as o u r c e sa n ds p a t i a ld a t ap r o c e s s i n ga s c o m m o nq u e r yl a n g u a g eo fs p a t i a li n f o r m a t i o ni n t e g r a t i o n ,t h u sf o r m sa c o m p l e t e 1 i i s p a t i a li n f o r m a t i o ni n t e g r a t i o nm o d e l t h i sp a p e rf o c u s e so nd e s i g n i n gas i m p l e f u n c t i o n a lx m l q u e r yl a n g u a g e ( f x q l ) t od e s c r i b eq u e r yp l a n ,i no r d e rt os u p p o r t t h et r a n s l a t i o nf r o ms p a t i a lq u e r yl a n g u a g et oq u e r y p l a n ;d e s i g n i n gq u e r yp r i m i t i v e s a c c o r d i n gt ot h er e q u i r e m e n to fs p a t i a li n f o r m a t i o ni n t e g r a t i o n ,t h e r e b yd e s i g n i n g a n di m p l e m e n t i n gt h ee x e c u t i o n e n g i n e f o r i n t e r p r e t a t i v e l ye x e c u t i n gf x q l e x p r e s s i o n s b ys t u d y i n gt h ed e s i g na n di m p l e m e n t a t i o no fx q u e r ye n g i n ef o rs p a t i a ld a t a i n t e g r a t i o ni nt h i sp a p e r , i te l i m i n a t e st h ed i f f e r e n c ea m o n gs p a t i a ld a t as t o r e di n d i f f e r e n td a t as o u r c e s ,p r o v i d e sau n i f o r ma c c e s si n t e r f a c ef o ru s e rt od a t ab ya t r a n s p a r e n tw a y , a n di m p l e m e n t s t h es h a r ea n di n t e r o p e r a b i l i t yo fs p a t i a ld a t a r e s o u r e e s k e y w o r d ss p a t i a ld a t ai n t e g r a t i o n ;x m l ;x q u e r y ;m e d i a t o r - w r a p p e r ;f u n c t i o n a l l a n g u a g e i v 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意。 签名: 鱼耋日期:塑签:生:2 关于论文使用授权的说明 本人完全了解北京i q k 大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其他复制手段保存沦文。 ( 保密的论文在解密后应遵守此规定) 签名:虹导师签名:辑日期:必 第1 章绪论 1 1 课题简介 1 1 1 课题背景 第1 章绪论 自从8 0 年代第一个地理信息系统( g e o g r a p h i ci n f o r m a t i o ns y s t e m ,简称g i s ) 商业化产品诞生以来,地理信息系统逐渐发展成为一个重要的计算机应用产业。 地理信息的本质特征是区域性的,具有明显的地域分布与归属;地理信息又具有 专题性,通常由不同的行业部门收集和维护。所以地理信息具有分布性,数据并 不是集中存储在某一地理位置,而是分散地存储在各处。因此,对地理信息的组 织和处理也是分布的。地理信息的这种天然分布特征,使得地理信息系统与分布 式技术的结合成为必然趋势。从地理信息系统的发展历程中可以看出这一点,地 理信息系统经历了主机一终端系统、桌面工作站系统、局域网分布式系统,直至 目前的基于互联网的应用信息系统,特别是近几年w e bg i s 的迅速发展将地理 信息系统的应用范围从面向专业领域扩展到诸如“数字地球”这种面向社会的信 息基础设施,使得地理信息系统成为社会化的应用信息系统。 随着计算机网络技术和数据库技术的迅速发展,i n t e r n e t 上存在着数量越来越 庞大的地理信息资源。这些地理信息资源面向特定的行业,依赖于特定的支撑环 境,分布在各种各样的空间数据库中,存储成多种格式,属于不同的个人和组织。 社会化的地理信息系统的目的在于提供一种开放式的地理信息获取手段,使得人 们能够根据需要获取来自任何计算平台的地理信息资源,从而实现地理信息资源 的共享。考虑到网络j _ = 的各种地理信息资源存在着种种差异,如何从网络上获取 这些地理信息资源,避免地理信息资源的重复性建设,实现不同部门之间的资源 共享就成为一个迫切需要解决的问题。 1 1 2 课题研究任务 本课题主要研究地理信息系统的数据集成技术,研究如何建立一个能够支持 分布式空间数据集成应用和共享的框架,把网络环境中的多个空间数据库以信息 北京工业大学硕士学位论文 集成的方法联系起来,实现空间数据的共享即:将物理上分布在各处的空间 数据库,在逻辑上集成为一个整体。一方面为了共享异构数据源,使得处于异构 环境、分布存放的各种空间数据库能够协同工作,互相配合、互相补充,达到既 相互独立,又能互操作的目标;另一方面,也是为了满足人们日益增长的对地理 信息的需求,让用户能够快速准确地定位、获取并使用他们所关心的地理信息资 源。 1 1 3 研究目的和意义 本课题的研究目的是为基于i n t e m e t 的地理信息应用系统的开发提供一种软 件开发语言( 通用数据查询语言) 及其支撑环境,作为地理信息应用集成系统的 核心技术;实现这种数据集成软件、信息集成软件和应用集成软件的软件开发环 境与应用软件支撑平台,支持异构多数据源的空间数据查询、空间数据集成和空 间数据资源共享,支持基于各种计算机网络系统的地理信息应用软件的开发。 按照国务院提出的政务信息化带动企业和社会信息化的策略,作为国家电子 政务示范工程的组成部分,北京市j 下在组织实施北京市电子政务试点示范工程, 建立了政务专网,计划为发展跨部门、跨地域的电子政府应用系统提供安全平台 和应用支撑平台,服务于各个单位之间的协同办公、信息共享与信息交换。 在计算机网络应用系统中将广泛地使用地理信息资源;对于上级政府机关, 则更需要利用下级政府和业务部门的地理信息资源。北京市各个区县和委办局实 现了不少计算机应用系统,程度不同地利用了电子地图和空间数据等地理信息资 源。对于跨地域的企业信息化应用系统和社会化信息系统,也需要利用各地的地 理信息资源。然而,鉴于这些应用系统属于不同的应用领域,服务于不同的信息 团体,采用不同的软硬件平台、不同的地理信息基础系统、不同的专业词汇和数 据标准、不同的数据组织方法和数据格式,使得跨平台、跨地域的地理信息数据 集成面临很大的困难。根据专家预测,未来的计算机应用中将有8 0 的系统使用 地理信息;这就使得跨平台、跨地域的地理信息数据集成技术成为包括电子政务 应用的跨地域、跨部门分布式系统的关键支撑技术之一。 第1 章绪论 1 2 空间数据集成概述 数据是g i s 最根本的基础,同时也是g i s 项目中最昂贵的部分,一般占整个 系统建设成本的5 0 - - 8 0 。一方面,随着g i s 的广泛应用,社会上积累了大 量的g i s 数据资源;而另一方面,众多的g i s 系统成为信息孤岛,各区域、各 应用部门的g i s 数据在数据结构、数据模型、数据格式等方面都存在着很大的差 异,这就导致了数据难以共享。通过数据集成可以实现数据共享,使用户能够透 明地访问分布式异构数据源。 随着空间数据库管理技术的发展,出现了许多比较成熟的空间数据库管理系 统,如e s r i 公司的a r c s d e 、i n t e r g r a p h 公司的g e o m e d i a 、m a p l n f o 公司的m 印i n f o 等。同时,基于空间数据库的应用系统也在电力、矿产及城市规划等诸多领域广 泛应用。 由于不同部门可能采用不同的空间数据库构建自己的应用系统,而不同的空 间数据库管理系统在数据结构、数据模型和数据格式上存在着较大差异,这样往 往导致花费巨大人力和物力建设的应用系统无法与其它系统共享数据和服务。空 间数据集成能够解决在不同的应用系统间无法共享数据和服务的问题。空间数据 集成就是要消除各种存储在不同数据源中的空间数据之问的差异,以透明的方式 向用户提供一致的访问接口,实现空间数据资源的共享与互操作。 1 2 1 互操作性与o p e n g i s o p e n g i s 是开放地理数据互操作规范( o p e ng e o d a t ai n t e r o p e r a b i l i t y s p e c i f i c a t i o n ) 的简称,由国际开放地理数据协会( o p e ng e o d a t ac o n s o r t i u m , 简称o g c ) 提出。o g c 是。个研究地学空间信息及其处理方法的标准化组织, 它提出o p e n g i s 规范的目的是为分布式环境下访问和处理空问数据提供软件框 架。o p e n g i s 是一套全而的规范,它规定了应用程序之间进行互操作的地理空间 数据应当包含的各种标准数据类型和能在其上实旌的基本操作,还规定了互操作 的规范和对数据语义的共同理解。 遵循o r ) e n g i s 所开发的软件允许用户在一个开放的信息技术环境中访问和 处理来源不同的地理空间数据,从而使得+ 个系统同时支持不i 司的空间数据格式 北京工业大学硕十学位论文 成为可能。o p e n g i s 规范的提出为在不同厂商的空间数据库系统之间实现协同工 作提供了统一的标准,使得开发人员编写的符合o p e n g i s 接口标准的空间数据 应用软件之间能够实现互操作。虽然目前还没有完全实现o p e n g i s 抽象规范的 软件产品,但它显然指明了g i s 软件今后的发展方向。 o p e n g i s 规范中包含一个重要的成员一一g m l 【l j 。g m l 是一个用x m l s c h e m a 2 1 描述的x m l 语法,用来建模、传输、存储空间和非空间的地理信息。 它是一个标准的数据交换接口,消除了在异构系统问进行数据转换所付出的代 价,达到了数据互操作的目标。而且g m l 是一个开放源代码的标准,用户能够 免费地使用它,它不依赖于任何的g i s 软件供应商。同时,g m l 还提供了一系 列通用的地理建模对象,从而使得在各自独立开发的应用之问进行互操作成为可 能。 1 2 2 空间数据集成的研究现状 数据集成所要解决的主要问题是如何为存储在不同数据源中的数据提供统 一的访问接口,并以一致的表示方式提供给用户。由于不同数据源的数据模型往 往不同,并且数据的语义也存在着差异,因此,要在异构数据源之间实现数据共 享和互操作,必须首先解决数据源间的这些冲突。 常用的数据集成方法有如下几种:翻译( t r a n s l a t e ) 、集成( i n t e g r a t e ) 、分散 ( d e c e n t r a l i z e ) 、m e d i a t o r w r a p p e r 方法。 ( 1 ) 翻译方法要求为系统中每一对异构数据源提供特定的翻译机制,因此当 系统中的异构数据源的数量增长时,翻译器的数量将呈指数增长。开发这种翻译 器可能花费相当大。 ( 2 ) 集成方法( 也称为紧密耦合方法,t i g h t c o u p l i n ga p p r o a c h ) 要求把来自 于不同数据源的数据模式集成为一个模式( 称为全局模式方法,g l o b a ls c h e m a a p p r o a c h ) 或几个模式( 称为联合数据库方法,f e d e r a t e dd a t a b a s ea p p r o a c h ) 。 全局模式和联合模式都必须在查询执行之前定义,因此局部数据源的任何更改都 会影响到全局模式和联合模式。 ( 3 ) 分散方法( 也称为松散耦合方法,l o o s e l y c o u p l i n g a p p r o a c h ) 通过允许 客户应用直接访问局部数据源来避免像紧密耦合方法中那样必须定义全局模式 第1 章绪论 和联合模式。然而,在这种情况下必须由客户应用来负责数据的集成。 ( 4 1m e d i a t o r - w r a p p e r 方法在通用数据模型( c o m m o nd a t am o d e l ,简称 c d m ) 和通用查询语言( c o m m o nq u e r yl a n g u a g e ,简称c q l ) 的基础上,通 过w r a p p e r 和m e d i a t o r 两个子系统来实现异构数据集成。其中,w r a p p e r 负责特 定数据源的数据存取和转换;而m e d i a t o r 负责接受来自客户应用的查询请求, 同时负责协调来自w r a p p e r 的、以通用数据模型表示的数据,向客户应用提供一 致的数据视图。 一些空问数据库商业化产品采用翻译的方法来实现异构数据集成,如e s r i 公 司的a r c s d e 、i n t e r g r a p h 公司的g e o m e d i a 、m a p i n f o 公司的m a p i n f o 等,它们在 进行异构数据集成时都用到了数据转换的方法。这种情况的出现和各种不同产品 的发展历史和市场策略有关。而在国内外关于异构数据集成的研究中,使用最多 的是m e d i a t o r - w r a p p e r 方法,如斯坦福大学研制的t s i m m i s 数据集成系统、中 科院地理信息产业发展中心研制的s u p e r m a p 等。本课题组曾经研制了一个基于 m e d i a t o r w r a p p e r 的空间数据库引擎系统s d b e 3 9 ,s d b e 是一个支持s h a p e f i l e 、 o r a c l es p m i a l 和常用关系数据库等多种数据源的空问数据库引擎。与其它的数据 集成方法相比,m e d i a t o r - w r a p p e r 方法最突出的优点是在无需改变原有数据存储 的前提下,系统采用了通用数据模型和通用查询语言,很好地屏蔽了不同数据源 之间的差别。该方法还具有伸缩性好、易于扩展的特点,并且其体系结构非常适 合用于分布式系统。 1 3 相关工作 随着信息量的增加和i n t e m e t 的盛行,用户对于信息的查询不仪仅限于存储 在本地的数据,而且需要对分布存储在网络上的异构数据源中的数据进行查询。 基于m e d i a t o r - w r a p p e r 的信息集成系统是当前信息集成领域的主要研究对象。 研究基于m e d i a t o r - w r a p p e r 的信息集成首先要考虑两个问题:通用数据模型 和通用查询语言。对于许多的信息集成问题而言,关系数据模型过于严格,以致 无法用它来有效地表示半结构化和非结构化的数据。而x m l p ( 可扩展标记语 言) 作为自描述的标记语言,能够根据具体应用灵活地表现异构数据源中的各种 信息,能够比关系数据模型表示更加多样化的数据格式,通用性更强。所以信息 北京工业大学硕士学位论文 集成大多采用x m l 作为基本的数据模型。x m l 是一种便于查询与存储的标记 语言,已经成为信息交换的一种重要形式。利用x m l 进行统一模式的信息集成, 可以很好地解决集成异构数据源的问题。 一般说来,信息的结构化程度与查询的效果成正比,结构性越强,查询的效 果就越好。根据信息的结构化程度,可以把信息查询分为结构化查询、半结构化 查询和非结构化查询。结构化查询和非结构化查询是大家比较熟悉的查询方式。 例如,s q l 语言就是典型的结构化查询:用户在了解了数据库表结构的基础上, 根据自己的需求来组织查询语句。而一般的网上搜索引擎提供的是基于关键词的 非结构化查询,因为h t m l 文件包含的信息基本上没有结构可言,所以只能由 网页编制者或由系统通过某种算法提出一些关键词来供用户查询。结构化查询的 查询效果好,但对其查询的信息的结构性要求高,非结构化查询对信息的结构性 要求不高,但一般查询效果不好。近年来又出现了半结构化的查询,可以将其看 作是结构化查询和非结构化查询的折衷。用x m l 表示的数据在不知道具体的 d t d 或x m ls c h e m a 时可以被认为是一种半结构化的数据,因为它满足x m l 规范,具有一定的结构性。而目前随着x m l 的应用发展起来的基于x m l 的查 询语言x q u e f y 【4 】是一种同时支持结构化查询和半结构化查询的语言。 1 3 1 国内外研究现状 在信息集成技术领域,x m l 模式已经代替了关系对象模型、面向对象模型 而成为最新的通用数据模型( c d m ) ,将x m l 技术应用于信息集成已经成为重 要的发展方向。为了实现地理信息资源的互操作,国际o p e n g i s 协会正在制定 一组开放式地理信息资源互操作规范,包括基于x m l 的g m l 空间数据交换标 准。w 3 c 组织推出了x q u e r y 语言规范,支持x m l 文档的数据查询。 国外i b m 公司已经推出了支持x q u e r y 语言的信息集成软件。美国m i n n e s o t a 大学正在研究面向g m l 数据的查询语言g m l q l 【5 】,通过扩展空间运算处理功 能来适应空间信息处理的需求。新劲i 坡技术大学也在尝试为x q u e r y 语言扩展空 间关系运算,以支持空间数据的处理。国内北京大学、复旦大学、中科院地理所 等单位在网络地理信息系统( w e b g i s ) 的研究【4 1 】年,也探讨了基于g m l 数据 的空间信息集成技术 4 2 , 4 3 。 第1 章绪论 已有多家研究机构和大学对x q u e r y 语言的实现技术进行了研究。在这些具 体实现中一般都使用一种抽象的表示方法来描述查询计划,然后对查询计划进行 执行,所以查询计划的描述手段是x q u e r y 语言实现中的一个关键问题。g a l a x 【2 2 j 系统是x q u e r y1 0 规范的一个参考实现( r e f e r e n c ei m p l e m e n t a t i o n ) ,它非常严格 地遵循了x q u e r y 规范中的各项规定,g a l a x 系统使用一种查询代数来组织查询 计划,这种查询代数是x q u e r y 核心文法的变体。此外,中国人民大学的 o r i e n t x 4 、俄罗斯莫斯科大学的b i z q u e r y 2 3 】也采用与x q u e r y 核心文法相似的 查询代数来组织查询计划。 1 3 2 问题与不足 目前,在x q u e r y 语言扩展空间数据处理功能的研究中,还没有考虑信息集 成的需求,不支持跨网络的多数据源数据查询。在基于g m l 数据的空间信息集 成技术研究中,还没有采用x q u e r y 语言作为通用数据查询语言的基础。而且, g m l 标准和x q u e r y 语言仍处在发展过程中,语言实现技术不够成熟,未能提 供足够的查询优化技术来适应海量空问信息处理的需求。 1 4 课题来源及主要研究内容 本课题来源于北京市自然科学基金项目( 4 0 5 2 0 0 6 ) 。课题采用基于x m l 的 g m l 标准和x m l 模式作为空间信息集成的通用数据模型,采用支持网络多数 据源和空间数据处理的扩展x q u e r y 语言作为空间信息集成的通用数据查询语 言,从而形成完整的空间信息集成模型,使其支持空间信息和非空问信息的无缝 连接、分布式数据查询和数据集成,支持基于多空问数据源的分布式应用系统的 数据建模和软件开发。 课题的主要研究内容是面向空间数据集成的x q u e r y 查询引擎系统的设计与 实现。包括以下三方面的内容: f 1 ) 通用数据查询语言的设计:针对空间数据集成的需求,在x q u e r y 语言 的基础上进行功能扩展,即为x q u e r y 语言扩展空间运算和多数据源描述方法, 设计面向多数据源空间数据集成的数据查询语言。 ( 2 ) 通用数据查询语言的实现技术:研究空间数据查询优化、多源数据查询 一1 一 北京工业人学碗上学位论文 分解方法、函数式x m l 查询语言f x q l ( f u n c t i o n a lx m lq u e r yl a n g u a g e ) 和查询原语的设计,进而研究查询引擎的实现方法。 ( 3 ) 多数据源共享技术:针对各种数据源,设计不同的适配器,为查询引擎 提供统一的数据访问接口。 本人在此课题中主要负责以下工作: f 】) 参与数据集成方案整体设计。 ( 2 ) 设计一种简单的函数式x m l 查询语言f x q l 作为查询计划的描述手段, 以支持空间查询语言到查询计划的变换。 ( 3 ) 针对空间信息集成的需求来设计查询原语。 ( 4 ) 设计并实现负责解释执行f x q l 表达式的执行引擎。 1 5 本文结构 本文第1 章介绍空间数据集成的背景知识及其相关工作,并简要介绍了论文 的主要研究内容。第2 章介绍x q u e r y 语言以及本系统对x q u e r y 语言的扩展。 第3 章介绍面向空间数据集成的x q u e r y 查询引擎系统的整体设计。第4 章研究 函数式x m l 查询语言f x q l 的设计与实现。第5 章研究执行引擎的设计与实现, 并分析了一个具体的查询实例。附录的系统测试用例给出了本系统已经通过的 3 2 个w 3 c 测试用例。 第2 章x m l 查洵语言x q u e r y 第2 章x m l 查询语言x q u e u 面向空间数据集成的x q u e r y 查询引擎系统选择基于x m l 的通用数据模型, 从而需要研究针对x m l 数据模型的查询语言- x m l 查询语言。 随着x m l 应用领域的扩大,使用x m l 存储、交换和表述信息的应用日益增 多,人们对其研究也越来越深入,如何从x m l 数据源中准确有效地查询所需信 息,也就变得越来越重要。x m l 资源的充分利用将围绕着x m l 查询而展开,其 中,x m l 查询语言的研究与实现是关键所在。 2 1x m l 查询语言 x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 的中文译名是“可扩展标记语言”。w 3 c 的x m l 工作组于1 9 9 8 年2 月j 下式推出了x m l1 0 版本。x m l 具有一些被公认 的优点:纯文本表示,具有平台无关性;信息的内容与信息的表示是分开的,能 够满足各种不同的应用需求等。帆还有一个很大的优点就是具有白描述性, 因为通过x m l 文件的d t d ( d o c u m e n tt y p ed e c l a r a t i o n 文档类型声明) 和 x m ls c h e m a 就可以定义数据集的结构信息。 x m l 作为一种文档标记语言,已被广泛接受和使用,各大软件生产商特别 是数据库生产商纷纷把支持x m l 作为一个重要的发展方向。o r a c l e9 i 和s q l s e r v e r2 0 0 0 都声称支持x m l 数据库,但是还不能算是真正意义上的x m l 数据 库。像o r a c l e9 i 和s q ls e r v e r2 0 0 0 是将层次模型关系化,将x m l 按照其层次 结构进行分解,并在关系数据库中创建与之对应的数据表,用父表和予表来描述 其层次结构。同时提供个软件包支持x p a t h 6 语法,将x p a t h 语法转换成s q l 语句后对数据库进行杏询,并将查询结果以x m l 文档的方式返回。如果个 x m l 文档的结构非常复杂,那么在数据库中建立的关系模型将非常庞大,组织 成x m l 文档将花费较长的时间。 由于x m l 能够根据具体应用灵活地表现异构数据源中的各种信息,包括应用 程序之间的数据交换、结构化和半结构化的文档以及数据库中数据的输出。所以, 越来越多的信息开始采用x m l 进行存储、交换和表现,因而有效且高效地存取 x m l 信息,提供跨越不同数据源的基于x m l 信息的垒询检索能力变得r 益重要。 一9 北京丁业大学硕十学位论文 开发人员迫切需要一种灵活易用、针对各种类型x m l 数据源的查询语言。 同时,随着存储在x m l 文档中的信息量飞速增长,x m l 日益成为i n t e m e t 上 数据交换的标准,人们需要一种能够方便交换x m l 数据的手段。由于x m l 具有 自描述性且与平台无关,所以交换x m l 数据的途径也应该是与平台无关的。要 实现这一点,必须要有一种能够从x m l 文档中准确获得所需信息的查询语言。 作为x m l 标准的主要制定机构,w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ) 成立了x m l 查询工作组,其任务是创建一种灵活的查询语言来实现从x m l 文档中获取数据, 具体目标是【7 】:为x m l 文档建立一个数据模型、基于该数据模型的一组查询运算 符以及建立在这些查询运算符操作之上的查询语言。 虽然x s l t 和x p a t h 可以在一定程度上满足上述需求,但是其书写的复杂程度 和功能的不完善使其远远不能达到人们的要求。人们需要的是一种类似于s q l 语 言的、简单且易于编写的x m l 数据查询语言。鉴于此,w 3 c 的x m l 查询工作组 制定出了x m l 查询语言规范_ x q u e r y 语言。x q u e r y 是一种从x m l 格式的文档 中获取数据项的查询语言。x m l 模糊了数据库、文档和消息之间的界线,但是, 要充分发挥x m l 的所有潜能,还必须要有一种强大而优雅的查询语言,x p a t h 还 远不够,x q u e r y e 在试图成为所需的语言。 2 2x q u e r y 语言简介 随着w e bs e r v i c e 技术的不断普及,x m l 正在逐渐成为标准的数据传输语言。 同时,这项技术的另外+ 些特点:树形结构、对数据顺序的记忆能力、灵活的数 据结构( 半结构化) ,使得人们越来越相信x m l 数据库就是未来数据库技术的 发展方向。对于“+ 项数据库技术来说最重要的部分就是查询语言。而x q u e r y 就 是未来x m l 数据库的查询语言,相当于现在的关系数据库的s q l 语言。 那么什么是x q u e r y ? x q u e r y 是x m lq u e r y 的缩写。x q u e r y 是。种基于x m l 的功能强大的数据查询语言,适用于查询各种类型的x m l 数据源,它能够从x m l 文档中选择并提取出复杂的模式,进而把查询结果重构为用户所需的新的x m l 文档结构。冈为s q l 语言是对建立在关系代数基础上的数据表进行操作的语言, 而x q u e r y 贝j 是对建立在x q u e r y 数据模型上的x m l 数据进行查询的语言,所以 x q u e r y 极有可能成为“x m l 中的s q l ”。x q u e r y 是x p a t h 的一种扩展,但与x p a t h 第2 章x m l 查询语言x q u e r y 不同的是,x q u e r y 提供了控制结构的编程环境和一系列的数据类型,而且x q u e r y 还可以在x m l 文档中创建结构内容。x q u c r y 汲取了多种查询语言n 砩f 华,所以, 它体现出多种查询语言的优点。x q u e r y 设计优良、使用灵活,预汁危不久的将 来,x q u e r y 会对x m l 的应用产生巨大的影响。 x q u e r y 将查询表示成表达式,它支持几种表达式,因此,它的噬j 句可以有几 种不同的形式。各种x q u e r y 表达式可以完全嵌套,所以,_ 了查细佝概念对于 x q u e r y 来说是很自然的。x q u e r y 的基础是表达式,x q u e r y 定义的。生式由关键 字、操作符和操作数组成。通常,表达式中的操作数也是表达式。s q u e r y 是- - 种函数式语言,它允许多表达式的嵌套。x q u e r y 也是一种强结构化1 1 勺语言,表 达式中的操作数、操作符、函数都必须遵循已经定义好的模式。 2 3x q u e r y 语言的构成及特点 2 3 1x q u e r y 语言的构成 一个x q u e r y 查询由查询序言和查询体组成。查询序言是一系列的声明和定 义,建立了查询处理的环境,主要包括命名空间声明、s c h e m a f 、定义用户 自定义函数等。 查询体由定义查询的表达式序列构成: q u e r y b o d y := e x p r 表达式序列则由多个表达式组成: e x p r :2e x p r s i n g l e ( ”,”e x p r s i n g l e ) 。 2 3 2x q u e r y 语言的特点 从x q u e r y 语言的构成不难看出: ( 1 ) x q u e r y 将查询表示成表达式,各种x q u e r y 表达式可以嵌赛使r 日。x q u e r y 可以把查询结果重构为用户所需的新的x m l 文档结构。x q u e r 3 7j 纠兰特性使其 非常适合承担异构数据集成系统中查询分解和结果重构的任务。田此,面向空间 数据集成的x q u e r y 查询引擎系统在x q u e r y 语言的层次上进行查_ 【f | jj h ¥。而其它 的数据集成系统往往在逻辑查询计划的层次上完成查询分解,并且;* 要为查询分 北京工业大学硕士学位论文 解和结果重构没计若干特定的原语。 ( 2 ) x q a e r y 是一种典型的函数式语言。在该语言中,表达式能够被任意地组 合,并允许嵌套,只要类型相符,一个表达式的结果就可以作为另一个表达式的 输入。 ( 3 ) x q u e r y 是一种强类型语言。x q u e r y 的类型系统基于x m ls c h e m a 。可以 从一个或几个x m ls c h e m a 导入类型,然后x q u e r y 能够基于这些类型进行查询运 算。查询体中各种表达式的操作数必须和操作符的要求相匹配,函数的参数必须 符合指定的类型。此外,x q u e r y :还支

温馨提示

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

评论

0/150

提交评论