(计算机应用技术专业论文)基于webservices的异构数据收集与分发平台的研究和实现.pdf_第1页
(计算机应用技术专业论文)基于webservices的异构数据收集与分发平台的研究和实现.pdf_第2页
(计算机应用技术专业论文)基于webservices的异构数据收集与分发平台的研究和实现.pdf_第3页
(计算机应用技术专业论文)基于webservices的异构数据收集与分发平台的研究和实现.pdf_第4页
(计算机应用技术专业论文)基于webservices的异构数据收集与分发平台的研究和实现.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

中文摘要 从上世纪6 0 年代开始,数据库技术已经经历了几十年的发展,彳导到了广泛 的应用。数据库应用发展到今天,已有相当数量的以不同形式存储的、依赖于不 同数据库管理系统的异构数据。这些大量的地理位置不同、存储格式不同的数据 难以实现共享和互相访问,于是这些异构系统形成了信息孤岛。 本文在充分研究了w e b s e r v i c e 、异构数据库发展状况的基础上,结合x m l 数据交换技术与j 2 e e 框架体系,建立了基于w e b s e r v i c e 的异构数据收集,分 发平台系统。在尽量不影响各地数据库自治性情况下,将分散的异构数据库整合 成一个虚拟海量数据仓库,建立全局数据库视图,使用户感觉就像使用一个单一 数据库一样,从而透明地访问异构数据库。用户查询、浏览、下载异构数据库中 所需要的数据,同时对于高级需求用户提供非w e b 数据服务,如决策支持,数据 统计等。 i 实现基于w e bs e r v i c e 平台的应用界面,实现应用系统前端零维护。 2 利用现有各异地j 异构数据库,将异构的数据从各数据库汇聚起来,实 现对于用户的透明传输,汇聚,这样可以提高系统利用效率并节约存储,网络传 输成本。 3 采用x m l 作为异构数据模式的中间标准,实现x m l 与关系数据库模式的 相互映射并使用数据融合技术将数据转换成统一格式进行分发。 4 提供各种服务,如直接访问浏览查询结果数据、利用s o a p 技术实现收 集与分发平台的非w e b 数据服务,如支持决策,数据统计等。 5 用户可以注册添加新的数据源( 数据源指异构数据库) 。 关键词:w e b s e r v i c e 、异构数据库、x m l 、数据融合、映射、s o a p a b s t r a c t t h ed a t a b a s et e c h n o l o g yh a db e e nd e v e l o p i n gf o rs e v e r a ld e c a d ea n d h a daw i d er a n g eo fa p p l i c a t i o nf r o ml a s t6 0 s t o d a y ,t h e r ea r eal o t o fh e t e r o g e n e o u sd a t ae x i s ti nd i f f e r e n ts t o r a g ef o r ma n dr e l l e do n d i f f e r e n tk i n d so fd a t a b a s em a n a g e m e n ts y s t e mf r o mt h e n t h es h a r i n ga n d i n t e r c o n n e c t i o nb e t w e e nt h e s eh u g en u m b e ro fd i f f e r e n tl o c a t i o na n d s t o r a g ef o r md a t ab e c o m ev e r yd i f f i c u l ta n dt h e nt h e s eh e t e r o g e n e o u s s y s t e mb e c o m et h ei s o l a t e di s l a n do fi n f o r m a t i o n t h i sp a p e rr e s e a r c ht h ed e v e l o p i n go fw e b s e r v i c ea n dh e t e r o g e n e o u s d a t a b a s ea n db u i l taw e b s e r v i c e b a s e dd a t ac o l l e c t i o na n dd i s t r i b u t i o n p l a t f o r mw i t h 瑚lt e c h n o l o g yo fd a t as w i t c h i n ga n dj 2 e ef r a m e w o r k i t i n t e g r a t e dt h ed i s t r i b u t e dh e t e r o g e n e o u sd a t a b a s ei n t oav i r t u a lh u g e d a t a w a r ea n dc o n s t r u c t e da n dg l o b a lv i e ww i t h o u td i s t u r b i n go t h e r d a t a b a s e sw o r k i n g t h eu s e r 前i 1 1f e e lt h e ya r eu s i n gau n i q u ed a t a b a s e a n dt h e nt h e yc a na c c e s st h eh e t e r o g e n e o u st r a n s p a r e n t l y t h eu s e rc a n q u e r y 。e x p l o r ea n dd o w n l o a dt h e i rn e e d e dd a t af r o mh e t e r o g e n e o u sa n d s u p p o r tt h es e n i o rs e r v i c es u c ha sd e c i s i o ns u p p o r t i n g ,d a t as t a t i s t i c s t os e n i o ru s e r s 1 t h i ss y s t e mb u i l d saw e b s e r v i c e - b a s e dg u it om a k ec l i e n ts i d en o n e o fm a i n t a i n i n g 2 u s i n gl i v ed i s t r i b u t ea n dh e t e r o g e n e o u sd a t a b a s et oc o l l e c td a t a i nt h e ma n dt om a k ei tt r a n s p a r e n t ,i tc a np r o m o t et h eu s i n ge f f i c i e n c y a n ds a v ec o s to fs t o r a g ea n dt r a n s p o r t i n g 3 u s i n gt h ex m lt ob et h em i d d l ef o r m a tf o rh e t e r o g e n e o u sd a t a b a s e a n dm a k et h em a p p i n gb e t w e e nx m la n dr e l a t i o n d a t a b a s ep a t t e r np o s s i b l e , t h e nd i s t r i b u t et h ed a t ao fu n i f i e df o r m a tu s i n gt h eo a t a m e r g i n g t e c h n o l o g y 4 t os u p p l yv a r i o u ss e r v i c es u c ha se x p l o r i n g ,q u e r y i n ga n ds o m e s e n i o rs e r v i c el i k ed e c i s i o na n dd a t as t a t i s t i c su s i n gs o a pt e c h n o l o g y e x c e p tw e b 5 u s e rc a nr e g i s t e rt h en e wh e t e r o g e n e o u sd a t a b a s e k e y w o r d s :w e b s e r v i c e ,h e t e r o g e n e o u sd a t a b a s e ,x m l ,d a t a m e r g i n g , m a p p i n g s o a p 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得云洼王些太堂或其他教育机构的学位或 证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文 中作了明确的说明并表示了谢意。 学位论文作者签名。妥相 签字日期:冲2 月弓日 学位论文版权使用授权书 本学位论文作者完全了解云洼王些太堂有关保留、使用学位论文的规定。 特授权云洼王些太堂可以将学位论文的全部或部分内容编入有关数据库进行 检索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学 校向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:委7 司 签字日期:乒田年2 月多日 导师躲詹。需 签字同期:m 7 年t 月3 日 学位论文的主要创新点 将s q l 指令转换成相应的) 【m l ,根据数据库的配置再转换成对应的s q l 格式。 运用s o a p 解决w e b s e r v i c e 非w e b 数据访问功能。 用户自行注册异构数据库,系统根据注册的数据库类型自动生成配置文 件。 第一章绪论 1 1 引言 第一章绪论 从上世纪6 0 年代开始,数据库技术从网状、层次数据库系统,到关系数据库 系统再到面向对象数据模型为主要特征的数据库系统,已经经历了几十年的发 展,得到了广泛的应用。数据库应用发展到今天,已有相当数量的以不同形式存 储的、依赖于不同数据库管理系统的异构数据。尤其是随着i n t e r n e t 的发展,数 据库系统更是得到了广泛的应用。无论是企事业单位,还是政府机关或是医院学 校,只要是用到电子办公,信息化管理的地方都或多或少的会用到数据库。所以 数据库应用发展到今天,已有相当数量的企业事业单位和科研机构等积累了大量 的、以不同形式存储的、依赖于不同数据库管理系统的数据。尤其是那些国家重 要的科学数据资源,比如气象科学数据,图书资料数据,档案资源等基础性、公 益性数据库资源,它们很多都是历史久远,有很高的参考价值。但也正是由于历 史久远,它们存储的数据格式很可能不是目前主流的格式。所以这些大量的地理 位置不同、存储格式不同的数据难以实现共享和互相访问,于是这些跨平台异构 系统形成了一个个的信息孤岛。因此如何共享这些数据信息,是我国企业和政府 机关办公信息化进程中所急需解决的问题;另外,随着商务网站之间电子商务, 电子政务的发展,异构数据库问的数据交互日益频繁,但由于历史等原因, i n t e r n e t 上的数据库系统不少也是分布、异构的,i n t e r n e t 上大量信息必须通过 数据库系统才能有效管理,如何合理地使用这些异构数据库,也已成为当前急待 解决的问题。 在很多情况下,需要进行数据交互的系统是异构的。异构数据库是一个既与 各种数据库有密切联系,又有别于各种数据库的新的领域。它的研究目标是:对 地理上分布的多个异质数据库( h e t e r o g e n e o u sd a t a b a s e sh d b ) ,在尽可能少地 影响本地自治性的基础上,构造具有用户所需要的透明性的全局数据库,以支持 对各种数据库的全局应用和各异质数据库之间的信息交换和共享。 为了实现数据共享,必须找到一种独立于具体系统的数据表示方法。本文正 式针对数据库技术发展过程中出现的这些问题提出利用w e bs e r v i c e 技术建立异 构数据收集与分发平台,用统一的方式,实现各系统之白j 不同结构和格式的数据 的相互转换,解决信息孤岛问题。 第一章绪论 1 2 主要研究内容与目标 本课题研究目标是:在充分研究了异构数据库发展状况的基础上,结合x m l 数据交换技术与j 2 e e 框架体系,建立了基于w e bs e r v i c e 平台的数据自动收集, 分发平台系统。在尽量不影响各地数据库自治性情况下,将分散的异构数据库整 合成一个虚拟海量数据库仓库,建立全局数据库视图,使用户感觉就像使用一个 单一数据库一样从而使用户透明地使用异构数据库。用户查询、浏览、下载其 他地区的所需要的数据信息,同时对于高级需求用户提供非数据服务,如决策支 持,数据统计等。 1 实现基于w e bs e r v i c e 平台的应用界面,实现应用系统前端的零维护。 2 利用现有各异地、异构数据库,数据停留在这些数据库中,无须汇总集 中到一个地方需要时,数据信息自动从各地数据库抽取,实现对于用户的透明 传输,汇聚,同时也可以提高系统利用效率并节约存储,网络传输成本。 3 采用x m l 作为异构数据模式的中间标准,实现x m l 与关系数据库的相互转 换。 4 提供各种服务,如直接访问浏览查询结果数据、使用收集与分发平台提 供的其他非数据服务,如支持决策,数据统计等。 5 透明地注册添加数据源( 数据源指异地数据库) 。 1 3 课题研究状况与前景 1 3 1 数据共享服务国内外研究现状 数据共享服务主要涉及两个方面: 1 如何以统一的格式从众多异构数据库中收集到同类的数据。 2 如何以有效的方式把收集到的数据进行分发,甚至挖掘数据更深层的意 义并将这些数据的内在联系表示出来。 传统的异构数据库集成试图解决底层数据库的结构异构。两种流行的方法是 全局模式和联邦模式方法: 全局模式集成是最早提出的解决数据共享的方法,每个本地数据库的模 式整合为一个单一集成的模式,给用户提供一致统一的数据访问界面。用户并不 知道他们使用的数据库是异构的、分布的。这种数据库集成方案难以实现且难以 扩展,因为各个数据库问存在着许多语义、结构和行为冲突。为解决语义冲突, 经常需要牺牲本地数据库的自治性。全局集成过程首先要求完整的语义信息,各 2 第一章绪论 个数据库需要暴露概念模式或数据字典,有时,这个过程还要求本地数据库修改 数据库模式来减小系统集成的难度。 联邦模式方法中,每个本地数据库提供一个输出模式,也就是输出部分 模式,以供其它数据库共享。每个数据库使用这些输出模式来定义一个输入模式, 即表示能够本地访问的远程数据库信息的部分全局模式。根据用户需要的不同, 联邦模式方法又分为松散耦合与紧密耦合两种,松散耦合由用户负责创建、管理 输出模式。而紧密耦合由联邦管理员全权负责输出模式的创建、维护,以及对输 出模式的访闯。联邦模式方法的缺点是它的复杂性,不适合普通应用系统的使用, 一般由大型数据库厂商开发。 随着c l i e n t s e v e r 体系结构的流行,一些数据库集成软件被称为中间件,因 为它们处于客户端和服务端之间。中间件通常提供了同构层和集成层。将中间件 分为三类:公共接口( c o m o ni n t e r f a c e ) ,公共网关( c o m o n g a t e w a y ) 和公共协议 ( c o m o np r o t o c 0 1 ) i 蚓。 使用公共协议的系统建立了点对点和层次的关系,其中每个数据库服务器都 可以是另一个系统的客户,这种系统灵活性很好。著名的公共协议有i b m b r d , s y b a s et a b u l a rd a t as t r e a m ,和i s or e m o t ed a t aa c c e s s ( r d a ) 。 公共接口在客户端提供了同构层,通过应用程序接口( a p i ) ,每个数据库都 提供了应用程序接口作为通信协议。访问每个数据库都通过各自的c l i e n t s e v e r 接口,可能与其它数据库不同。公共接口的缺点是缺少位置透明性以及难以管理 多种协议。典型的例子是微软的o d b c 接口。 公共网关在客户和不同服务器之间提供了同构层。它其实是一个协议转换 器,选择一个c l i e n t s e r v e r 协议作为标准协议,其它协议转换成该协议公共网 关既作为异构数据库的客户端,又作为使用标准协议的客户的服务器。如o r a c l e 的0 c i ,s y b a s e 的o p e nc l i e n t s e v e r ,m i c r o s o f t 的0 d s 等。 可扩展标记语言x m l ( e x t e n s i b l e m a r k u p l a n g u a g e ) 目前正在成为各种数据特 别是文档的首选格式。x m l 可以将内容与表现形式分离,使数据重复使用,因此 x m l 作为公共的数据格式,x m l 可以处理文本、图像和声音等多种格式的数据,并 且可以由用户进行扩展以处理任何特殊类型的数据。x ml i t 术逐步成为数据集成 研究的热点,它的出现使得对各种不规则的数据信息( 当然也包括规则信息) 的标 准化描述成为可能,使用x m l 技术为基石建立数据集成平台,是数据集成技术发 展的趋势。x m l 是一种元语言,可以定义其他的语言,并且它的标记是用户定义 的,从理论上讲,其类型的数量可以是无限的。瑚l 的前景被人看好,有人预言, 在2 1 世纪,x m l 语言将成为世人皆知的“世界语”而j a v a 技术具有众所周知的 跨平台性,最大的优点在于“一次编译,处处运行”。基于x m l 和j a v a 的数据集 第一章绪论 裁应用失金韭解决多平台、多结构数据熬集成箍供7 一条解决途径。它可以撼众 照雨整秘终罄瓣套蘩穗关数据资源遴纷整会,为垒鼗戆痿惠姿源纛翔撵珙彳毽 麓,麸两搭建起整个企鼗豹绕一髂怒警螽,解决数据冗余囊不致翊题,撼供一 致协调的数据视图和统一鹃套询谬匈,辫蔽异构数摇鲻的差异。 传统的分发方式都是简单的通过f t p 下载、整理后以文本方式下载、浏憋器 齑接浏览。随着w e b 应用的增多,人们不再满足简单的浏览网页,在w e b 上开发出 了更多的应用。其中,w e b s e r v i c e 就怒其中的一种,它可以实现程序级的w e b i 盘 用,将网络的作用无线的延伸了。他一出现就收到了各大软件公司的追捧,纷纷 摊出了自己的w e b s e r v i c e 开发套件,像微软的n e t ,s u n 的j 2 e e 等。 l 。3 2w e b s e r v i c e 研究现状 囊获瓣终产生,它藏连接了务秘务榉麴诗算较,这些谤雾壤上运纾琴瀚豹系 统较箨。宅稻虽然采溪稳羁黥邋谂t 撇t c p i p 互相对话,毽这释互遵戆联次怒俺 输层实现的,应用软件之翘还无法纛接对话。 w e b s e r v i c e 最大的好处就是掇供丁昴构平台无缝衔接的技术手段。 w e b s e r v i c e 是描述一些操作( 利用标准化的x m l 消息传递机制,可以通过网络访问 这些操作) 的接口。w e b s e r v i c e 是用一种标准的、规范的x m l 所做的服务描逑。遮 一描述囊括了与服务交互需要的全部缃节,包括消息格式、传输协议和位鬣。谈 接口隐藏了实现服务的细节,允许服务的实现独立于其硬件或软件平台和编筠服 务所用的编程语言。支持基于w e b s e r v i c e 盼应用程序能够成为松散耦合、面向缀 锌和跨技术的实现。w e b s e r v i c e 溉掰以矮嚣一顼特定静任务或一组任务,也霹馥 溺箕宅w e bs e r v i c e - - 超震手实蠛笈杂熬聚集或囊鲎交易。 w e b 自麸诞生之兹藏蓰供了强穴貔矮零售息鹣辘秀,只要毒潮羹器,溺产辘 可以通过b t t p 协议在丽络孛访闷威嬲程序。但珑著计算辊功戆豹鑫益辜富,威蠲 的日益深入,用户并不仅仅满足予必怒用浏览器来访问应用,而是需簧一种鞭直 接的形式将之嵌入到自己的应用中。此时h t m l 就无能为力了。而w e b s e r v i c e 磁好 能满足这种需要。比如某企业将新产晶蠢询变成w e b 服务,然后将该服务的信息 公布到公共站点上,用户通过访问公必站点了解到该服务的信息,其中会包括服 务的描述。然后用户会根据该服务的描述生成本地代理,借助该代理用户会获得 该服务提供的即时信息。 m i c r o s o f t 提出n e t 体系结翰翻s u n 公司依靠j a v a 技术的j 2 e e 体系结构, 霹 :w e bs e r v i c e 述行支持,这秀耱络稳郡采薅w e bs e r v i c e 的架秘,送移癍惩系 统弱集残,稳建裰应藜瘟矮系统。 n e t 结构主要采焉m i c r o s o f t 软佟,掴互可 ;玉方硬迸行集残歼笈,捺调熏捧, 4 繁一章缝论 但是由于主要怒m i c r o s o f t 公司撮出的产品和技术,燕袋应用于w i n d o w s 平螽,因 此难于与其他产品集成,具有很火的局限性。 j 2 e e 体系结构是一个开发的体系结构,目标就是兼容任何公司的产品芹系 统,所以相对n e t 结掏具有更大的优势,j a v a 语言一次缡写、到处运行豹特点 ;l 及捧惫w e b 壹瓣纛痔熬缓程语言羧广泛接受。嚣时,蘩孳= j a v a 鼓本夔嚣发怒够移 植到多种平螽,并且也为众多的歼发厂商所支簿,更加适宜进行软件的集成。嗣 时j 2 e e 平台作为一个企业级应用的汗发和部署平台,拥有大量的企业用户,因此 为了增加软件的可扩展性和使用饿,本系统采用基于j a v a 技术进行开发,w 以适 用于更加广泛的平台和系统。 1 4 数据l l 雯蕊、分发手台撅遴 1 4 1 系统模型概述 本系统燕蒸手w e b s e r v i c e 熬数搓共享分布式应照系统。数摆分毒农菇瑰舅 构远程数据露巾,当惩户请求奁诲数箍时,中心簇务嚣程注麓列表孛查我务数摇 源( 指异地数据库) ,将请求发往收集模块,通过收集模块与远程数据摩邋信并 传送查询操作,远程数据库根据畿询在本地数据库中取得结果后返回给本系统收 集模块,收集模块将数据返回给数据集成模块。然厨,数据集成模块根据服务的 方式返回绘分发摸块,或是同时豁入缓i 孛数据库等德数搌挖握服务等。 整令系统激辩静方式疆供绘鼷声缓雳: 1 w e b 蠢式:采用i n t e r n e t 浏览器方式,实现浏览、打包下载、简单的排 序、统计等操作,满足一般用户的需求。 2 对有歼发要求的用户提供数据交换的服务:采用w e bs e r v i c e 的形式提 供绘相应的系绕舞发级接口,用户系统可以将数据交羧豹功能嵌入到自行辨发豹 软箨系统孛,嚣萎羌嚣矮户霉去嚣获寿关豹鼗豢交换磅麓。 系统模黧如下图1 - i 所示; 5 第一章绪论 图1 - 1 系统模型图 1 4 2 数据收集与分发方法概述 计算机网络、互联网技术的发展与各种分布式应用系统的不断地出现,推动 着数据收集与分发的技术也在不断革新与进步。从其发展历程来看,收集功能主 要有以下几种方法实现: 1 手工收集 2 数据库批量导入 3 广域网、局域网技术与v l a n 技术导入 4 通过w e b 实现智能收集 分发功能主要有以下几种方法实现: 1 手工分发 2 光盘形式分发 3 w e b 服务发布 4 文件下载服务 5 电子邮件服务 以上提到的几种数据收集与分发方法,只是当今比较流行的方法。不可否认, 当今计算机技术与互联网技术的发展日新月异,不久将来肯定会出现一些更加简 单,方便,快捷,高效的数据交换方法,使得数据的共享更加方便。有一种w e b 应用趋势正在出现,它正在融合以前单纯的c s 、b s 的计算模式,而是把二者 结合起来,形成了c b s 。这样后台数据就可以直接从服务器端导入客户端的应 用程序内,从而可以更高效的利用数据,而不只是简单地浏览数据。 6 第一章绪论 1 4 3 基于w e bs e r v i c e s 的异构数据收集与分发 本文所要研究和开发的数据收集与分发系统就是可以实现应用程序级的分 布式系统。它是基于w e b s e r v i c e 的w e b 系统,充分利用x m l 中间标准的通用性 和平台无关性来解决由于数据库系统的不同而造成的数据格式不一致问题;应用 u d d i ,w s d l 等机制,实现程序的对接,可以实现w e b 浏览以外的网络服务,如 数据统计,数据挖掘等;使用j a v as e r v l e t 可以自动注册异地数据库,实现透 明的数据扩容。这无疑扩展了w e b 的使用范围与功能,也给进一步利用数据、集 成异地、异构数据共享数据、充分挖掘数据更深层含义开拓了广阔的道路。 1 5 课题研究意义 首先,由于历史的原因,成本的考虑等使得各个企业事业单位的交易平台和 业用户内部业务系统的应用环境、后台数据库形式千差万别。在这种异构环境下, 企业间形成了一个个的信息孤岛,大量的有用信息无法传递,这是一个全社会的 信息浪费,而隐藏其背后的就是大量的人力物力资源的浪费。因此如果能利用某 种技术,建立一个高性能的信息交换枢纽,屏蔽各业务系统之间的差异,在每个 业务系统不必了解其他业务系统的信息交换格式、物理位置等信息的情况下,实 现各异构系统之间顺畅的信息交换,必将能大大节约全社会的生产成本。所以基 于w e bs e r v i c e 的异构数据收集与分发平台的研究有极大的实用价值。 其次,它涵盖了w e bs e r v i c e 技术、w e b 开发技术、数据库以及系统安全等 多个研究领域的多项前沿技术,包括分布式对象技术、关系型数据库与x m l 文档 的映射和w e bs e r v i c e 开发技术和基于h t t p 的通信技术等等。因此它又具有很 大的理论研究意义。 同时。基于w e bs e r v i c e 的数据收集与分发平台系统提供了一整套进行进一 步开发的接口和功能,用户可以进行二次开发,将所需的系统功能嵌入自己的应 用系统中。通过数据收集与分发平台可以集成众多的异构数据系统,共同构成一 个统一数据源,通过统一的方式提供给用户,并且将相应的功能作为w e bs e r v i c e 提供出来。数据交换平台可以实现对于处理的扩展性,并且可以动态的进行数据 节点的数据源的配置以及数据节点的增减,还可以进行通信的动态安全配置。和 以往的系统相比,本系统具有以下几个特点: 1 数据兼容性:为了尽可能兼容其他系统,主要是主流的数据库系统( 包括 s q ls e r v e r ,o r a c l e ,s y b a s e 等) ,通过数据源系统提供的数据驱动,以及用户 自开发的数据驱动,可以连接用户选择的数据系统。 2 通信的通用性:通过采用基于h t t p 协议的w e b 技术进行通信,尽可能的兼 7 第一牵缝论 容各种网络环境,特别是采用x m l 能够逶避茨夹壤,茧;溪数据交换。 3 。霹掇撵缝:系统默认捷供t 蒸量霉e b 赛瑟戆功麓露式,鼹予 疑b 数糕谤求 采翅s o a p 避f f 交互。 4 格式统一型:采蘧x 魏襻为各舅搀数摇懿统一巾翊格式。飙各数据源鼬取 寒睦结采转羧麓稻应魏x m l 交律,霹辍方便逢转换为f i t m l ,j s p 等交箨,穷蠖避器 分发。 客 第二章数攒收集与分靛平台关键技术 蘩二掌数摇牧鬃与努发平台关键装术 2 。1 数据收集岛分发平叁鹣美键翔燕麓技术 顾名思义,数据的收集与分发平螽包括三个方面的问题:数据、收豢和分缴。 数据:这里攒不同穆类的数据,掰以怒举同耪类静数攒痒也可以是不嗣数据 库巾的表。霾为数据库的厂商不弼,掰产慧瀚数据库数攒格式就会不同,象绕健 用谯些数据时,满要将数据统一表舔。 收集:指的爨麸分布式翁雾陶数据黪巾,饕嗣耱类鹣数据收集到零憋泉。懿 暴系统不翘遒骞饕些鼗撂库审枣溪耱炭麓袭突箨霹骧羧鬃,瓣它圣 么都擞不了。 度疆,系统需要维护毒一张寄关注耱数据撵麓字典,字魏中至少应该羲攒;瓣标 数攒库所在机器麴i p 或祝器名;秘栎数据霹类型与名称;表名;列名;命名鼯构 说明;语义舅 鸯说骥。这撵在攥户撬交豢询戆露谈,系绞藏蕞疆报撂这个譬热囊 韵杂选择不同的数据库中的袭,势檄獭不同数据库类型穗交对应格式的s q l 谮铝。 分发;主要涉及分发的方法,解决数据抉享的方式需爱靠网络,这样的分发 力艘较大。如何邋过网络使数攥分凝的疆加快婕,广泛照褥要解决的阏题。 2 。2 异构数据库集成 2 ,2 , 异梅数捺痒耩念 弊构数据瘁怒捂包含不游糍骥瀵式、不嗣数据模型豹数据库,潮数据瀵勰不 网厂蒲的网质雾溅数据库,以及嗣一数据库厂巍豹不同版本、针对不同网络琊境 豹数籀奉产品等等。舞了实魏辩搬敬熬疼之翔静数据传送,藏一定要蓠先浅漱它 们之间的差异。引起数据库惹异的因素很雾,如:计算机硬件、操作系统、数据 模溅、物理模型、数据语义等的不同。具体说明有以下几个方面: 1 谤算枧髂系结秘熬异聿鼋:嚣令渗岛鹣数暴痒可戳努臻 运行在大型椒、小 戮税、p c 或嵌入戏系统中。 2 。操体系统的异构:各个数撼麾系绫驰基础操作系统可以是u n i x ,w j n d o w s 系弼、l i n u x 等。 麓潞舔零毒黪霉搀:茸潋蓬颡必荚系蹙数攫瘁系统懿0 r a c t e ,s q l s e r v e r 簿, 镌弼瑷是不月数爨模垒的数据瘁,魏关系、模式、层次、鞫络、西向瓣蒙,灏数 9 第二章数据收集与分发平台关键技术 型数据库共同组成一个异构数据库系统。 4 数据结构及语义异构,各个不同的数据库应用系统采用不同的数据结构 和语义表达方式; 5 开发语言的异构性:c ,c + + ,j a v a ,d e l p h i 等。 6 网络平台的异构性:e t h e r n e t ,f d d i ,a t m 和t c p i p ,i p x s p x 等。 本课题研究中,对于异构数据系统的选择只限于关系模型数据库。 2 2 2 异构关系数据库之问的比较 不同的数据库以及同一数据库厂商的不同版本的数据库之间对数据类型的 定义是有差别的,通过对几个常用数据库的数据类型进行比较,发现大致有以下 几类差异: 1 不同数据库间数据类型的种类、个数有所不同。以o r a c l e 数据库和 s q l s e r v e r 数据库之间的比较为例:o r a c l e 数据库的数据类型 有:c h a r ( n ) ,v a r c h a r 2 ( n ) ,l o n g ( n ) ,d a t e ,n u m b e r ( p s ) ,r a w 和l o n gr a w ;s q l s e r v e r 数据库的数据类型有:i n t ,s m a l l i n t t i n y i n t ,f l o a t ,r e a l ,c h a r ( n ) , v a r c h a r ( n ) ,t e x t ,b i n a r y ( n ) ,i m a g e ,m o n e y ,s m a l i m o n e y ,d a t e t i m e , t i m e s t a m p ,s m a l l d a t e t i m e a 从中我们可以看出o r a c l e 数据库提供的数据类型比较少,而s q l s e r v e r 数据 库对各种不同数据的数据类型进行了更细的划分,比如日期类型分为:d a t e r i m e , s m l l d a t e t i m e ;整数分为:i n t ,s m a l l i n t ,t i n y i n t ,而o r a c l e 并没有细分。这样 在转换时需要注意类型的搭配。 2 针对同一数据类型,不同的数据库对其定义的数据长度也不尽相同。比 如:在s q l s e r v e :数据库中,数据类型c h a r ( n ) 为长度在1 - 2 5 5 之间的字符数据, 而在f o x p r o 数据库中c h a r ( n ) 的长度却为卜2 5 4 之间的字符数据:又如在o r a c l e 数据库中d a t e 数据类型可以存储世纪、年、月、日、时、分、秒,而在其它数 据库:d b a s e ,f o x p r o 中d a t e 数据类型却只能存储月、日、年。 可见即使是同一数据类型,因其长度的不同使得我们在异构数据库间进行数 据传送及存储时也需要考虑该数据的长度而进行选择( 如:o r a c l e 数据库的导出 表单中某字段的数据类型为d a t e 型,而被导入的s y b a s e 数据库中相应的字段就不 能仍选d a t e 数据类型。而应选择d a t e ti m e 数据类型) 。 3 对于同一数据,在不同的d b m s ( 数据库管理系统) 中应选择不同的数据类 型。 l o 第二章数据收集与分发平台关键技术 2 2 3 异构关系数据库集成 异构数据库集成时一般应考虑如下几个方面的技术问题l ”1 : 1 全局数据模式及全局查询语言 因为联合使用的各局部数据库的模式可能互不相同,通过建立全局数据模 式,使用户感觉就像使用一个单一数据库一样从而使用户透明地使用异构数据 库。全局查询语句包括数据定义语言和数据操纵语言,它是对应于全局模式的。 2 识别数据匹配性 由于相同的对象在不同的数据库管理系统中也可能有诸如类型、长度等的不 同,因而在集成局部数据库管理系统时要识别这些不匹配的数据,并在全局数据 字典中表示它们。 3 全局数据字典 描述整个网上数据库的定义及分布情况,包括全局表对应的局部表名、局部 表存在的节点名等,它是全局查询的基础。 4 查询分解及翻译 从客户端发出盼全局数据查询被分解成对各局部数据库的子查询,再由相应 的局部数据库完成局部查询。因为局部数据库的查询语言与全局查询语言可能有 较大的不同,因此分解出的查询必须翻译为各局部数据库的查询语言。 5 查询优化 网上传输的速度是制约查询效率的关键因素,而各局部数据库的查询方式、 速度的不同又使处理变得更为复杂,特别是对涉及到多个局部数据库的连接查询 提高处理效率尤为重要。 6 查询结果处理 对于来自各局部数据库的局部查询结果要进行汇总,并按一定格式进行存储 和显示。 7 安全控制 当异构的数据库被集成到集成使用的系统中以后,要保证原来某一系统中的 保密不能被非授权的用户访问,被纳入到全局模式的各局部数据库不能被其所在 场所的用户随意修改。 8 数据转换 包括单节点上不同数据库的转换,网上任意两个节点上不同局部数据库间数 据库的转换。 l l 第二章数据收集与分发平台关键技术 2 3 关系数据库到x m l 的映射技术 以x m l 文档作为中间数据源的格式来实现异构数据库之间的信息交流是符合 转换要求的。因) ( i i l 是自描述的,是结构与数据的统一体。转换过程实质上是x m l 模式和数据与具体的关系型数据库结构和数据的双重映射关系。其转化的结构图 如图2 - 1 所示: 2 - 1 异构数据库转换图 数据库的关系模式转换为x m l 脚本,而其中的数据转换为x m l 数据。 x m l 的结构描述本文主要采用x b l ls c h e m a ,所以下面从几个方面来讨论二者 的转换算法: 1 x m l s c h e m a 到关系数据库的结构映射 2 关系数据库结构到y o , i l s c h e m a 的结构映射 3 ) ( m l 的数据文件到关系数据库的数据迁移 4 关系数据库的数据到x m l 数据迁移 2 3 1 关系数据库与x m l 的结构比较 关系型数据库以一种关系来组织数据,这里的关系可以形式化为二维表格, 表格由行和列组成。一般情况下,列被称作“字段”用于表示组成数据有效信息 的属性,而行则用于指示一条完整的数据记录。关系型数据库则是这些表的集合, 数据间的相关性可以通过表与表之间关键字( 外键) 来关联。关系数据库提供了 对于大批量数据的有效存储管理和快速信息检索、查询的功能。而构成关系数据 库的完整性主要由实体完整性、参照完整性和用户自定义完整性来约束。实体完 整性主要是关系的主键来体现,参照完整性是通过外键体现,用户自定义完整性 是通过用户在各字段定义的些附加的约束体现。例如;是否为空,默认值,c h e c k 第二章数据收集与分发平台关键技术 约束等 x m l 文档数据属于半结构化数据,有复杂的结构。且其有丰富的结构描述技 术,以及瑚ls c h e m a 功能最强大。在结构映射过程中,用x m ls c h e m a 描述关系 数据库的结构时可以保留的关系数据库的完整性。 在结构转换时还需注意,虽然转换的为关系型数据库,但不同版本和厂商的 数据库产品还存在一些差异。主要可能为语法和语义上的冲突: 1 命名冲突即源模型中的模式符可能是目的模型的保留字,这时就需要重 新命名。 2 格式冲突,相同种类的数据模型可能有不同的表示方法和语义差异,这 时需要定义两种模型之间的变换函数。如,o r a c l e 数据库中的日期类型的数据 的表示方法就与别的数据库系统中的日期型数据的表示方法不同,当o r a c l e 数 据库作为目的数据库时,就需要有对日期型数据的转换函数。 2 3 2 关系数据库到x m l 结构映射的方法 2 3 2 1 映射的常用方法 因关系数据库数据是结构化数据,x m l 文档属于半结构化的数据,将它与结 构化数据( 关系数据库数据) 或非结构化数据进行转换的时候,关键问题是建立不 同结构层次之间的映射关系,及如何保留他们的语义约束信息,即如何将关系数 据库的结构与约束映射为x m l 。x m l 与关系数据库映射主要有:基于模板驱动和基 于模型驱动方法。其中,基于模板驱动的映射需要嵌入s q l 命令,实用性范围有 限,所以这里只讨论基于模型驱动的方法。基于模型驱动方法根据映射关系的建 立方式不同,又包括两种方法:基于表格的转换方法和基于对象的转换方法i 。 1 基于表格的映射方法 许多转换数据库的中间件都采用基于表格的映射。它把x m l 文件看作一个( 或 一组) 表格,也就是说,x m l 文件的结构必须是下面这种样式: 第二章数据收集与分发平台关键技术 t a b l e ) d a t a b a s e ) 如

温馨提示

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

评论

0/150

提交评论