(计算机软件与理论专业论文)基于xquery的空间数据集成系统中若干关键技术的研究.pdf_第1页
(计算机软件与理论专业论文)基于xquery的空间数据集成系统中若干关键技术的研究.pdf_第2页
(计算机软件与理论专业论文)基于xquery的空间数据集成系统中若干关键技术的研究.pdf_第3页
(计算机软件与理论专业论文)基于xquery的空间数据集成系统中若干关键技术的研究.pdf_第4页
(计算机软件与理论专业论文)基于xquery的空间数据集成系统中若干关键技术的研究.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(计算机软件与理论专业论文)基于xquery的空间数据集成系统中若干关键技术的研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 伴随着计算机技术、特别是网络技术的飞速发展,地理信息系统的应用愈加 广泛,用户所需要获取和处理的空间数据量迅速增加。但空间数据源存在异地性 和异构性等特点,如何屏蔽数据源在空间和存储格式方面差异,帮助越来越多的 用户获取最为及时、最为准确的地理信息,实时地进行地理数据的共享、交换以 及运算功能,成为空问数据集成领域研究的主要问题之一。 在很多数据集成的模式中,m e d i a t o r - w r a p p e r 架构近年来被认为是实现异构 数据集成的理想解决方案,该方案不需要改变原始数据的存储和管理方式,它通 过中间件向下协调各异构数据源系统,向上提供统一数据模型和通用的数据访问 接口。该集成框架为实现跨数据源间数据的互操作运算提供了基础。 同时,开放g i s 联盟( o p e ng i sc o n s o r t i u m ) t 定了符合地理空间数据组织特 点的x m l 扩展集地理标识语言( g e o g r a p h ym a r k u pl a n g u a g e ,g m l ) ,g ml 的出现为解决这个问题提供了基础。作为x m l 的空间数据编码格式,将g m l 作为空间数据集成的公共数据模型,使得空间数据的共享成为可能,利用g m l 提供的基本模型来组织空间数据,可以实现空间数据和非空间数据的无缝连接, 并支持x q u e r y 语言的综合查询。 基于上述相关的研究,本文介绍了如何在基于x q u e r y 查询语言的空问数据 集成系统中实现跨数据源查询运算的解决方案,首先通过扩展x q u e r y 语言,使 其支持对空间数据查询及运算功能;之后通过改进x q u e r y 数据模型的内部表示, 实现了g m l 空问数据与x m l 非空l l i j 数据的无缝连接,减少了空| 白j 数据格式转 换的需求,从而提高了空间运算的执行效率。在基于g m l 和x q u e r y 语毒的空 间数据集成系统中,实现了面向分伽式数据源的空间运算功能。此外,由于系统 采片】m e d i a t o r w r a p p e r 的集成架构,因此设计出优化的数据源适配器( w r a p p e r ) 管理模块。根据用户的查询请求获墩所涉及的数据源,实时地获取该数据源的适 配器并动态的加载到引擎中,直接为上层提供服务:以更好地适应系统的需求变 化,降低系统模块间耦合度,提高其呵扩展性能,减少内存开销。 关键词g m l ;x q u e r y ;空间数据模型;空间运算;数据源适配器管理 北京丁业大学丁学硕1 j 学位论文 a b s t r a c t n o w a d a y sw i t ht h ed e v e l o p m e n to fc o m p u t e rt e c h n o l o g y , e s p e c i a l l yt h en e t w o r k t e c h n o l o g y ,t h eg e o g r a p h i ci n f o r m a t i o ns y s t e ma p p l i e st om a n yf i e l d s t h ed e m a n do f s p a t i a ld a t ai n c r e a s er a p i d l y h o w e v er ,t h es p a t i a ld a t as o u r c eu s u a l l ys t o r e si nd i f f e r e n tp o s i t i o na n dh a s d i f f e r e n tf o r m a t t he r e f o r e ,t oe l i m i n a t et h ed i f f e r e n c eo fs p a t i a ld a t ai n s t o r a g e f o r m a ta n dp o s i t i o n ,l e tm o r ea n dm o r eu s e r sg e tt h eg e o g r a p h yi n f o r m a t i o nf a s t e ra n d e x a c t e r , i m p l e m e n tt h er e a l t i m et h ef u n c t i o no fd a t as h a r e ,e x c h a n g ea n do p e r a t i o n b e c o m et h eh o ts p o to fr e s e a r c h t h em e d i a t o r - w r a p p e ra r c h i t e c t u r ew a sc o n s i d e r e da st h eb e s t s o l u t i o nf o r h e t e r o g e n e o u sd a t as 0 1 i c ei n t e g r a t i o ni nr e c e n ty e a r s ,b yw h i c hw ed o n tn e e dt o c h a n g et h es t o r a g ef o r m a to fo r i g i n a ld a t a t h i sa r c h i t e c t u r ec o r r e s p o n d st h e h e t e r o g e n e o u sd a t as o u r c ef o rl o w e rl a y e ra n dp r o v i d e st h eu n i f o r md a t am o d e la n d a c c e s si n t e r f a c ef o ru p p e rl a y e r t h em e d i a t o r w r a p p e ra r c h i t e c t u r ep r o v i d e st h e f o u n d a t i o nf o ri m p l e m e n t i n gt h em u t u a lo p e r a t i o nb e t w e e nt h ed a t as o u r c e o p e ng i sc o n s o r t i u mc o n s t i t u t et h es u p e r s e t o fx m l - - g m l ( g e o g r a p h y m a r k u pl a n g u a g e ) ,w h i c hf o l l o wt h eo r g a n i z a t i o nf e a t u r eo fg e o g r a p h yd a t a t h e a p p e a r a n c e6 fg m l i st h ef o u n d a t i o nf o rs o l v i n gt h ep r o b l e m a so n eo fx m lf o r m f o r s p a t i a lc o d e ,g m ls h o u l db et o o ka st h ec o m m o nd a t am o d e li ns p a t i a ld a t a i n t e g r a t i o ns y s t e m ,w h i c hc a nn o to n l yi m p l e m e n tt h es p a t i a ld a t as h a r i n gb e t w e e n d i f f e r e n td a t as o u r c e ,b u ta l s oi m p l e m e n tt h es e a m l e s sl i n kb e t w e e nt h es p a t i a ld a t a a n dn o n - s p a t i a ld a t at os u p p o r ti n t e g r a t e dq u e r yb yx q u e r y b a s e do nt h ea b o v ec o r r e l a t i o nr e s e a r c h ,t h i sp a p e ra d d r e s s e sad e s i g np r o p o s a l , w h i c hm a k ex q u e r ys u p p o r tt ot h es p a t i a ld a t ai n q u i r ya n ds p a t i a l o p e r a t i o n ,b y m e a n so fe x t e n d i n gt h ex q u e r yl a n g u a g e t h r o u g hr e b u i l d i n gt h er e p r e s e n t a t i o no f t h ex q u e r yd a t am o d e l ,t h es e a m l e s sc o n n e c t i o nb e t w e e ng m l s p a t i a ld a t aa n dx m l n o n s p a t i a ld a t ah a sb e e ni m p l e m e n t e da n dt r a n s f o r m a t i o no fd a t af o r m a ti sr e d u c e d t o os ot h a te f f i c i e n c yi si m p r o v e d i nt h es p a t i a ld a t ai n t e g r a t i o nb a s e do ng m la n d x q u e r y , s p a t i a lo p e r a t i o nc a nb ep e r f o r m e do ns p a t i a ld a t af r o md i s t r i b u t ed a t a i l a b s t r a c t s o u r c e s b e s i d e s ,w es h o u l do p t i m i z et h em a n a g e m e n to fd a t as o u r c ea d a p t e r s m o d u l e ,w h i c hc a ng e tt h ed a t as o u r c ea d a p t e r sa n dl o a di n t os y s t e mr e a l t i m e , a c c o r d i n gt ot h eu s e r sq u e r yr e q u i r e m e n t ,s e r v i n gf o rt h eu p p e rl a y e r i tc a nb e t t e r a d a p tt h ec h a n g er e q u i r e m e n t ,r e d u c et h ed e g r e eo fc o u p l i n g ,a n di m p r o v et h e e x p a n s i b i l i t yo f t h es y s t e m k e y w o r d sx m l ;x q u e r y ;s p a t i a ld a t am o d e l ;s p a t i a lo p e r a t i o n ; d a t as o u r c em a n a g e m e n t i i i 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意: 签名: 关于论文使用授权的说明 , 本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅:学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 签名:导师签名: 第l 章绪论 1 1 课题背景 第1 章绪论 随着计算机技术的发展,地理信息系统的应用越来越广泛,空间数据作为其 中的主要数据类型,同普通数据一样需要走过从分散到统一的过程【5 】。随着时代 的发展,信息共享的需求越来越多,不同数据库之间的数据交换能力成为其发展 的障碍,信息孤岛随之形成。s q l ( 标准结构化查询语言) 以及o d b c 的出现 为这一难题提供了比较满意的解决方案1 2 引。但是空间数据如何引进这种思想,如 何将空间数据也纳入标准组织和标准协议进行规范和管理,从而使空间数据共享 成为现实,就成为了地理信息数据集成目前研究的重点。 2 0 0 0 年,o g c 在其已创建的公共地理模型( o g c 抽象规范) 基础上,通过封 装地理信息及其属性,制定了符合地理空间数据组织特点的x m l l l 4 】【1 5 】扩展集一 一地理标识语言( g e o g r a p h ym a r k u pl a n g u a g e ,g m l ) 。g m l 1 i 的出现为解决这一 困难提供了一个较好的解决方案。它通过提供基本的几何标记,通用的数据模型 和一个创建与共享应用系统框架的机制来实现空间数据的互操作。现在已经成为 网络地理空间数据交换标准。g m l 模型是完全基于o p e n g i s 抽象规范的,g m l 是对空间信息的x m l 编码【1 6 】【1 7 】,可以用来对空间数据进行建模、传输和保存。 地理信息系统的成功应用依赖于空间分析模型的研究和设计。空间分析可以 对空i 日j 信息进行各种复杂的空间运算,实现多源专题信息的分析,帮助用户了解 空间实体的空间分析特征与空间关系。因此,如何将g m l 规范应用到现实的地 理信息系统中去,真正地成为分布式异构的空间数据源的统一载体,构造出合理 的数据模型,并在其基础之上实现空间运算功能便成为了摆在而前的首要问题。 而刚刚成为w 3 c 组织标准的x m l 查询语言x q u e r y 无疑是查询g m l 格式数据 模型的最好工具。 空问运算是实现高效地理信息查询分析系统的重要环节,具有重要的意义。 同样,优化的空间数据源适配器管理模块也对整个系统的运行效率起着十分关键 的作用。本课题组现已初步丌发完成了一个基于x q u e r y 语言的空f n j 数据查询系 统,而在现有系统中还没有一套针对多数据源的查询运算的解决方案:同样在数 据源适配器的设计上和查询模块的耦合度很高,可扩展性能较差,因此不能对数 据源进行有效的管理和组织,急需优化重构。这几方面便成为本课题的主要研究 点。 北京工业大学丁学硕士学位论文 1 2 相关研究内容及研究现状 在信息集成技术领域,x m l 模型已经代替了传统的关系对象模型、面向对 象模型而成为最新的通用数据模型,将x m l 技术应用于网络信息集成已经成为 重要的发展方向【8 】。在w 曲g i s 方面,为了实现地理信息资源的互操作,o p e n gi s 组织正在制定一组开放式地理信息资源互操作规范,包括基于x m l 的g m l 空 间数据交换标准。 在国外,i b m 公司已经推出了支持x q u e r y 语言的信息集成软件l i q u i dd a t a 它是以x q u e r y 为查询语言以x m l 为数据模型的信息集成软件。英国l e e d s 大 学用j a v a 开发了一个工具g e o t o o l s ,基于w e b 对符合g m l l o 规范的空间数据 做了显示试验,它使用x e r c e s jp a r s e r 解析g m l 数据和相应的d t d 元数据,再 使用g e o t o o l s 对解析后的数据做处理,实现地图显示。美国m i n n e s o t a 大学正在 研究面向g m l 数据的查询语言g m l q l ,通过扩展空间运算处理功能来适应空 间信息处理的需求。新加坡技术大学也在尝试为x q u e r y 语言扩展空间关系运算, 以支持空间数据的处理【2 引。 与国外相比,国内的w e b g i s 起步较晚,但发展迅速,目前己经有很多商业 化的w e b g i s 软件,如国家遥感工程中心研制开发的g c o b e a n s 万维网地理信息 系统、武汉测绘科技大学开发的g e o s u r f 万维网地理信息系统软件、北京超图地 理信息技术有限公司的s u p e r m a pi s 等产【2 引。同时北京大学、复旦大学、中科院 地理所等高等学府和研究单位在网络地理信息系统( w e b g i s ) 的研究中,也探 讨了基于g m l 数据的空间信息集成技术。但是,我国的w e b g i s 应用系统的发 展还处于落后阶段,w e b g i s 的应用技术还有待于进一步发展。 1 3 课题来源和主要研究内容 本课题来源于北京市自然科学基金项目:面向空间数据集成的统一数据查询 语言的研究,主要基于北京工业大学计算机学院软件系现已初步设计完成的一个 以x q u e r y 为查询语言,x ml 为内部数据模型的分布式数据查询系统的平台之 上,继续扩充和优化其在分布式的空间数据运算以及空间数据源管理等方面的功 能。主要的工作可分为两大部分: 分布式空间数据集成运算的研究: 1 优化现有基于g m l 的空间数据模型,为基本的几何地理信息设计出符 合g m l 规范的空间数据专用模型。 2 与非空间数据模型无缝连接,动态的轴操作接口的设计。 3 扩充针对多数据源的空间运算功能,添加运算原语,提供丰富空间数据 2 第1 章绪论 的处理能力。 数据源适配器设计和管理的研究 1 多种异构数据源的适配器设计 2 动态加载释放数据源适配器的管理机制的研究 1 4 本文贡献 目前,在x q u e r y 语言扩展空间数据处理功能的研究中,还没有考虑信息集 成的需求,不支持跨网络的多空间数据源数据查询及运算分析功能。在基于g m l 数据的空间信息集成技术研究中,还没有采用x q u e r y 语言作为通用数据查询语 言的基础。本课题正是针对这几个问题提出了一种可行的解决方案,最终实现一 个基于x q u e r y 语言具有空间运算分析能力的多数据源空间数据集成系统。 本文提出了一种为x q u e r y 语言扩充空间数据运算原语的解决方案,从而实 现基于x q u e r y 语言作为统一数据查询语言的数据集成系统中对空间数据进行处 理及运算的支持。通过改造现有的以g m l 格式为基础的数据模型内部表示,在 其中无缝地嵌入一套专门处理地理信息数据的空间数据表示,从而实现高效优化 的空间数据查询功能,并在此基础之上为系统扩充空间运算原语、实现空间运算 功能。 同时,为支持高效的空间数据运算能力,提出了一套优化的数据源管理机制, 实现了低耦合度的架构模型,降低了空问和时间上的开销,提高了系统的可扩展 性。 1 5 本文结构 本文第l 章介绍空j 口j 数掂集成的背景知识及其相关工作,并介绍了本文的课 题来源以及:主要研究内容贡献。第2 章介绍了空间数据集成系统的整体解决方 案。第3 章介坌,j 了系统内通刚的数据模型以及专门针对地理信息数据的空间数据 模型的优化实现。第4 章介绍了针对于空间运算功能的扩展。第5 章介绍了分布 式片构数据源的管理。第6 章介绍了每个数据源适配器的设计和实现过程。 第2 章基于g m i x q u e r y 的空间数据集成j i v 决方案 第2 章基于g m l x q u e r y 的空间数据集成解决方案 2 1 o p e n g i s 规范 o p e n g i s 1 0 j 是由o g c ( o p e ng i sc o n s o r t i u m ) 组织制定的开放地理数据互操 作规范。它是一个全面的用于对地理数据和地理处理资源进行分布式访问的软件 框架规范。o p e n g i s 规范为所有的软件开发者提供了一个详细的公共接口模板, 以便开发出来的软件能与其他软件开发者开发出来的软件互用。o p e n g i s 规范的 目标是使应用软件开发者能在单一环境和单一工作流程中处理网上的所有地理 数据和使用地理数据处理功能。为了实现上述目标,o p e n g i s 制定了两类规范: 抽象规范和一系列在不同分布式计算平台上实现的实现规范。抽象规范的目的是 开发和建立一个概念模型,为实现规范的制定奠定基础;实现规范是实现工业标 准和应用程序接口的技术规范。 按照定义,o p e n g i s 为软件开发者提供了一个接口框架,用户可以在一个开 放信息技术环境中通过一致的计算接口访问和处理不同来源的地理数据。为了实 现不同应用程序间可互操作地理数据,o p e n g i s 为这些数据规定了各种数据标准 类型和在这些标准类型上所实施的操作,以及如何将这些标准数据类型组织成应 用程序之间交互的地理数据。 2 2 基于g m l 的数据模型 2 0 0 0 年,o g c 在其已创建的公共地理模型( o g c 抽象规范) 基础上,通过封 装地理信息及其属性,制定了符合地理空间数据组织特点的x m l 扩展集地 理标识语。- 占( g e o g r a p h ym a r k u pl a n g u a g e ,g m l ) 。至2 0 0 4 年2 月,g m l 已经升 级至3 1 ,并已经成为事实卜的网络地理空间数据交换标准。 2 2 1g m l 的特点 g m l 是严格的按照被广泛采用的x m l 标准制定的,这就确保了g m l 数据 可以被广泛的商业或者免费工具所浏览、编辑、转换,从而真正地实现开放的空 间信息。 。 g m l 规范的制定具有以下特点: 提供适用于i n t e m e t 环境的空间信息编码方式,用于数据传输和存储; 能够扩展,用以支持对空间信息的多样化需求,不管是用于对空间信息的单 气 北京t 业人学丁学顶一i j 学位论文 纯描述,还是进行更深层次的分析使用: 以一种可扩展和标准化的方式为基于w e b 的g i s 建立良好的基础; 允许对地理空间数据进行高效率编码; 提供了一种容易理解的空间信息和空间关联的编码方式; 实现空间和非空间数据的内容和表现形式的分离; 易于将空间信息和非空间信息进行整合: 提供一系列公共地理建模对象,从而使各自独立开发的应用之间互操作成为 可能。 作为应用于网络环境下的地理空间数据的通用接口,g m l 遵循数据互操作 模式,有利于多源数据的交换、传输与集成【4 1 1 。正是因为g m l 是一种容易理解 的空间信息交换格式并已经被普遍接受,因此,以g m l 数据为基础的大众化的 w e b g i s 应用系统可以帮助人们轻松地获得g i s 应用,基于g m l 的大众化 w e b g i s 应用将具有很大的实用价值和广泛的市场前景。 2 2 2g 池几何模型 g m l 提供的常用的地理元素有: 1 c o o r d i n a t e s 元素:即坐标系列元素,坐标序列是一对坐标的简单序列。 2 p o i n t 元素:p o i n t 元素用来编码p o i n t 几何类的实例,每一个p o i n t 元素包括 一个坐标元素,或者包括一个而且仅仅一个坐标对。 3 b o x 元素:b o x 元素用来编码范围( e x t e n t s ) ,每一个( e x t e n t s ) b o x 元素包括一 个坐标元素,后者包括两个坐标对。 4 l i n e s t r i n g 元素:即折线元素,它的路径是由一序列的坐标对所组成的直线 段连接起来的。 5 l i n e a r r i n g 元素:即环元素,是一个简单的、闭合的环,它的路径是由一序 列的坐标对所组成的直线段连接起来的。 6 p o l y g o n 元素:多边形元素,是一个连接的平面,多边形中的任何两点都可 以通过一条路径相连。多边形的边界是些l i n e a r r i n g 。 7 g e o m e t r y c o l l e c t i o n 元素:几何集元素,可以作为一个包含任意几何元素的 容器。一个g e o m e t r y c o l l e c t i o n 元素可以包含任意几何元素如:p o i n t s 、 l i n e s t r i n g 、p o l y g o n s 、m u l t i l i n e s t r i n g s 、m u l t i p o l y g o n s 等,甚至包括其它 g e o m e t r y c o l l e c t i o n s 元素。 8 m u l t i p o i n t 元素:多点元素,是多个点的集合。 9 m u l t i l i n e s t r i n g 元素:m u l t i l i n e s t r i n g 是l i n e s t r i n g s 的集合。 1 0 m u l t i p o l y g o n - m u l t i p o l y g o n 是p o l y g o n 的集合。 6 第2 幸基于g m l x q u e r y 的空间数据集成解决方案 2 2 3g m l 要素模型 g m l 采用要素( f e a t u r e ) 来描述地理实体和地理现象,g m l 要素是通过其 属性( p r o p e r t y ) 来描述的,这些属性包括:空间属性、时态属性及其它非空间 时态属性。一般来说,属性由名字、类型和值组成。 g m l 的f e a t u r e x s d 描述了地理特征的编码,利用x m l 的f e a t u r e x s d ,可以 像一般x m l 语言定义一些不包含几何信息的普通元素,这些元素可以嵌套或者 参照,还可以定义相应的属性信息。另外,加入几何信息,就可以定义具体的地 理实体( 包含了要素信息和几何信息) ,即所讲的地理对象。例如以风景区为例, 对一个风景区的建模,只要说明其景点内容、特色等一些属性信息,再加上其所 在的地理位置坐标( x ,y ) ,即可以认定就是一个具体的地理实体。g m l 定义了抽 象的元素类型,同时也定义了一些具体的类型。更为重要的是;用户可以扩充模 型的定义,以满足自己的要求。考虑下面例子: c a m 一 t h ef i v e rt h a tr u n st h r o u g hc a m b r i d g e 0 o ,5 0 010 0 0 ,5 0 0 上面是一个g m l 片段的例子,描述了一条河的空间信息,其中包括,河的 名称为c a m ,该河流流经c a m b r i d g e ,其对应的几何对象是一个l i n e s t r i n g ,其 坐标信息为:0 0 ,5 0 01 0 0 0 ,5 0 0 的序列。 北京丁业大学t 学硕士学位论文 2 3x q u e r y 查询语言 当前,x m l 已经成为事实上的数据表示和数据交换的标准,它的自描述和 特定可扩展性等核心特性提供了不同应用程序之间消息传输所需的灵活性。特别 是随着近年来w e bs e r v i c e 的蓬勃发展,x m l 越来越多地活跃在数据交换和存储 领域,用x m l 表示的半结构化数据越来越普遍,在数据集成中尤其明显。面对 x m l 数据量的指数级的增长,必然要求更有效的数据管理能力和更快、更精确 的查询。因此,如何从x m l 数据源中准确有效地查询所需信息,也就变得越来 越重要。 在这种需求的背景下,x q u e r y 1 4 j 随即产生了。作为一种新型的查询语言, x q u e r y 汲取了其它多种查询语言的优点,适用于各种类型的x m l 数据源的查 询,不仅查询功能强大,而且简洁灵活且易于实现。x q u e r y1 0 在2 0 0 7 年1 月 2 3 日被确立为w 3 c 推荐标准。而且,x q u e r y 还具有从多种数据库中检索信息 的特点,它能对各种数据和文档进行查询。 x q u e r y 的语法中大体上包括以下几类表达式: ( 1 ) f l w o r 表达式:x q u e r y 中最强大的特性是f l w o r 表达式,它是一 种典型的能够完成具有某种实际意义的查询的表达式。f l w o r 表达式包含模式 匹配、过滤选择和结果构造这三种操作。f l w o r 语句是x q u e r y 所具有的最 接近于s q l 的语句。f l w o r 表达式分别代表f o r - i ,e 1 w h e r e o r d e r b y - 一r e t u r n 的首字母缩略词。它支持迭代并且可以把变量绑定到中间结果。 对两个或多个文档进行连接和重构数据时这种表达式非常有用。每个f l w o r 表达式都有一个或多个f o r 子句、一个或多个l e t 子旬、一个可选的w h e r e 子 句、一个o r d e rb y 子句以及一个r e t u r n 子句。f o r 子句通过将节点绑定到变量, 以便继续去循环遍历序列中的每一个节点;l e t 子句为一个变量赋一个值或一个 序列;r e t u r n 子旬定义每个元组要返回的内容;对于w h e r e 子句,如果其有效布 尔值为真,那么该元组就被保留,并且它的变量绑定用在r e t u m 子旬中,如果其 有效布尔值为假,那么该元组就被废弃。 下面举一个典型的x q u e r y 查询实例来说明: f o r $ b o o ki nd o c ( ”l i b r a r y x m l ”) b o o k , l e t $ t i t l e := $ b o o k t i t l e w h e r e $ b o o k p u b l i s h e r2 a d d i s o n w e s l e y r e t u r n $ t i t l e ) 第2 章基于g m l x q u e r y 的窄问数据集成解决方案 该语句可理解成:“对于文档中的每本b o o k ,将它绑定至s j $ b o o k 变量上,同时将 b o o k 的t i t l e 子元素绑定至t j $ t i t l e 变量上,如果书籍的出版商是a d d i s o n w e s l e y , 则返回包含$ t i t l e 元素的b o o k l n f o 元素。” ( 2 ) x p a t h 表达式:x p a t h 是一种能在x m l 文档中查找定位信息的语言, 它能从x m l 文件中抽取单个项目或一组项目。 此外x q u e r y 还有5 种基本的表达式模式:元素构造符、算子和函数表达式、 条件表达式、限定表达式、列表构造符、数据类型表达式。通过它们的多种组合, 可以产生具有丰富而强大的查询检索功能的查询语句。 x q u e r y 的语义定义在一个抽象的数据模型之上,但x q u e r y 的规范中并没有 严格定义如何生成这个数据模型的实例,一个数据模型的实例可能从非x m l 数 据源中构造。因此在理论上,x q u e r y 可以用来查询任何提供该抽象数据模型的 数据源。这一点为x q u e r y 成为分布式数据集成系统查洵语言的可能提供了理论 基础。 2 4 基于m e d i a t o r w r a p p e r 的空间数据集成架构 2 4 1 m e d i a t o r w r a p p e r 集成架构 实现异构数据集成的方法可分为三种:f e d er a t e dd a t a b a s e s ( 联邦数据库) 模式、d a t aw a r e h o u s e s ( 数据仓库) 模式和中间件模式。 基于联邦数据库的集成是主要面向分布式环境中的多个数据库系统的集成, 优点是可以不移动数据或改变平台来实现异构、异地的数据访问,并可以使用数 据库中内置的各类数据处理功能以减少编码工作量。既可实现数据的物理集中, 也可以用逻辑集中方式分命式地访问原有数据,或者两种模式混用。缺点是集成 的各个数据库系统需要开放访问接口,当集成的系统很大时,对实际丌发将带来 巨大的困难。 基于数据仓库技术的集成,是指将1 i 同系统、不同环境的异构数据源的数据 通过清洗、转换、处理后,将数抛按不同主题、多维方式存储在数据仓库中。这 种方式需要将原有的数据移植到数据仓库集中存储。传统的数据库用于事务处 理,数据仓库用于决策支持,是建立决策支持系统的基础。数据仓库可提供简单 方便的频繁查询且查询效率高,同时可以直接进行数据挖掘、联机分析处理 ( o l a p ) 等智能分析。数据仓库所满足的是决策的分析需求,数据仓库对己集中 的数据进行深度分析以挖掘历史数据中隐含的趋势走向。但是成功地实施一个数 据仓库项目,通常需要很长的时间。数据的更新不及时,不能满足实时性要求高 9 北京t 业大学t 学硕 j 学位论文 的集成。 中间件集成实现数据的逻辑集成,是通过提供多个异构的数据源的虚拟视图 来进行,该方法不需要改变原始数据的存储和管理方式,中间件系统提供用户一 个全局模式,用户可以不必知道数据源的位置、结构及访问方法而实现对该数据 源的访问。其中m e d i a t o r - w r a p p e r 模式近年来被认为是实现异构数据集成的理想 解决方案,采用这种模式的典型系统主要有m i x 、t s i m m i s 、y a t 、n i m b l e 等【2 2 1 。 针对本课题研究的空间数据集成系统,基于m e d i a t o r - w r a p p e r 的数据集成系 统是实现异构数据集成的一种解决方案。m e d i a t o r 组件主要包括一个虚拟的全局 视图以及对全局视图的查询处理机制,不用改变原始数据的存储和管理方式,不 存放大量数据,只是把用户针对全局视图的查洵转换成对各个数据源的查询,为 用户提供一个查询异构数据源的高层服务。通过中间件向下协调各异构数据源系 统,向上提供统一数据模式和通用的数据访问接i s l 。w r a p p e r 用来屏蔽各数据源 的差异,提供统一的数据源模式以及m e d i a t o r 访问数据源的接1 :3 2 5 l 。其体系结 构如图2 1 所示。 天天 0 搴钽u s e r 踟铅i n t e 多袤参。n 耐a n a g e r q o 毫:i 暑:a e :0 r 8 :0 :i ,【 义 。:。,i ,1、( 7 : “i 0 0 :毛l d il 、,k ;f 麓 儿 1w :2 1 :;: v :名p p e rw r a p p e rl i j 。:! ;= ; 一i一 陶:v li 同圊 iw e b s e r v i i 图2 - 1m e d i a t o r - w r a p p e r 体系结构图 f i g u r e2 - 1m e d i a t o r - w r a p p e ra r c h i t e c t u r ed i a g r a m 基于m e d i a t o r - w r a p p e r 的方式集成空间和非空间数据,数据存储格式可以包 括关系数据库( 如o r a c l e 、s q ls e r v e r 等) 、专用空间数据库( 如o r a c l es p a t i a l 、 a r c s d e 等) 、文件数据库( 如s h a p e f i l e 、m i f 等) 。空间数据集成系统查询需要 从多个异构的数据源中获取数据,因此,m e d i a t o r 应该具备查询语句解析、分解、 i o 第2 章基于g m i x q u e r y 的空问数据集成解决方案 优化执行和对中间结果进行组织处理的能力。 2 4 2m e d i a t o r 介绍 它由m e d i a t o r 和元数据服务器组成。m e d i a t o r 是查询处理的核心,负责查询 的分析和执行,它向用户提供了一个高层的x m l 视图,用户可以通过x q u e r y 对集成的空间数据源进行分布式查询。元数据服务器提供了空间数据源的元数据 信息。其大体执行过程如图2 2 所示: 二:,、| 殛法树 ( d e c o m p o s e r) 、一一一, 一一巫婴洲 一l 竺吖核心文法树 一一i - x 竺竺核心文法树 一1 面望 一一j ,一 图2 - 2m e d i a t o r 处理流程图 f i g u r e2 - 2p r o c e s s i n gf l o wc h a r ti nm e d i a t o r 其中主要处理流程分为以下6 个步骤: ( 1 ) p a r s e :对用户发出的x q u e r y 查询进行语法分析,生成x q u e r y 语法树。 ( 2 ) d e c o m p o s e r :对x q u e r y 语法树进行查询分解。 一 ( 3 ) n o r m a l i z e :对查询分解后的x q u e r y 语法树进行规范化,得到x q u e r y 核心语法树。 北京工业入学t 学帧一i :学位论文 ( 4 ) s t c ( s t a t i ct y p ec h e c k ) - 对x q u e r y 核心语法树进行静态类型检查。 ( 5 ) t r a n s l a t e :对经过静态类型检查后的x q u e r y 核心语法树进行翻译,得 到f x q l ( 函数式x m l 查询语言) 语法树。 ( 6 ) e x e c u t e :执行f x q l 语法树【2 4 】,通过w r a p p e r 对数据源进行查询,最后 将最终的查询结果返回给用户。 这里重点介绍一下f x q l 语言,f x q l 是一种函数式语言,以函数调用为基本 结构。一个函数语言程序就是一个由函数嵌套调用构成的表达式。由于函数式语 言具有良好的数学理论基础,它在问题的描述及解决方面,就更加面向问题本身, 而与计算机的实现细节无关。 其特点主要表现在以下几个方面: 是种函数式语言,无副作用; 支持函数和递归函数的定义和调用; 支持函数作为参数; 是种x m l 查询语言,提供了丰富的原语函数,来完成各类数据处理 和程序逻辑控制的任务。 2 4 3m e t a d a t as e r v e r 介绍 元数据服务器为m e d i a t o r 和数据集成系统的用户提供元数据注册和访问的 功能。存储在元数据服务器中的信息用于描述数据源的三方面的信息: 数据源中的存储数据的x m ls c h e m a 定义,它描述了数据的结构和约束条 件,数据集成系统的用户将通过x m ls c h e m a 了解数据源的特征信息,编写 查询。由于x q u e r y 是强类型语言,m e d i a t o r 能够根据数据源的x m ls c h e m a 定义,进行表达式的类型推导和类型检查,以及在此基础上进行的逻辑优化。 数据源的连接信息( 例如连接关系数据库时使用的连接串) :这部分信息用 于动态建立w r a p p e r 。通过数据源连接信息,m e d i a t o r 完成了w r a p p e r 的构 造和连接。 数据源查询能力的描述。 m e t a d a t as e r v e r 是以w e b 服务的方式提供调用接口的,在系统内部有专门封 装该服务的模块,在第五章将有详细的介绍。 2 4 4w r a p p e r 介绍 w r a p p e r 负责对各种数据源的包装,w r a p p e r 根据模式映射文件将m e d i a t o r 1 2 第2 章基于g m i 。x q u e r y 的审问数据集成解决方案 发送来的子查询转换为本地查询,并将查询结果转换为g m l 格式返回给 m e d i a t o r 2 3 1 。 w r a p p e r 为m e d i a t o r 提供一个虚拟的x m l 视图,屏蔽了各数据源之间的差 异。从而使得m e d i a t o r 能够用统一的方式处理不同类型的数据源。 每个空间数据源的w r a p p e r 的体系结构如图2 3 所示: j l 查询条件 g m l 1r 映射规则 查询转换结果封装 应用s c h e m a ji 1r 本地查询 本地结果 空间数据源 图2 - 3w r a p p e r 体系结构图 f i g u r e2 - 3w r a p p e ra r c h i t e c t u r ed i a g r a m 其功能可概述为: ( 1 ) 解析映射规则和应用s c h e m a ; ( 2 ) 根据解析的结果转换查询条件,生成对于本地数据源的查询; ( 3 ) 查询数据源构造结果集,如果是空问数据就

温馨提示

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

评论

0/150

提交评论