基于WebService的异构数据库检索系统的设计.doc
《基于WebService的异构数据库检索系统的设计.doc》由会员分享,可在线阅读,更多相关《基于WebService的异构数据库检索系统的设计.doc(23页珍藏版)》请在沃文网上搜索。
1、 基于Web Services的异构数据库检索系统的设计摘 要在计算机系统信息集成中,如何充分利用现有的各种数据库资源,实现不同数据库间的连接、数据交换、数据共享,以实现各个数据库之间的协同工作,已经成为办公自动化和信息化建设的一个关键问题。为了提高现有数据库之间的数据交流,解决各个数据库之间协同工作的问题,开发了这套基于WebServices的异构数据库数据检索系统。其主要功能是实现不同数据库之间的数据转换,消除异构,检索出异地数据库指定数据。本系统采用了C/S体系结构,使用C#、XML语言开发,同时运用Oledb、WebService 等实现接口来完成此系统的功能。基于WebService
2、异构数据库数据检索系统为数字化资源的整合利用提供了全新的解决方案。此外,从数据库的现状来看异构数据库联合使用的要求是非常迫切并会长期存在下去的。关键词:XML;WebServices;异构数据库;数据检索Web Services-Based Design of Heterogeneous Database Retrieval System AbstractIn the work of office automation and information construction, there exists a most important question in the system of co
3、mputer information intergration: how to fully use severalof existingdatabase resourcesto realize the connection, database exchange and sharing among different databases; and how to make them work together harmoniously. In order toimprove the databaseexchange among different databases and to solve th
4、e cooperationtask among them, this set of heterogeneous database the data retrieval system is developed.The main function of this systemis to realize the data conversion of different databases, the elimination isomerism and the retrieve of assigneddata ofthe different database. The system reaches it
5、s function by using C/S model of system, computer language developmentof C#, XML as well as connection technology ofOledb; WebServices. This kind of WebService heterogeneous database data retrieval system has provided a new-brand solution for the digitized resources conformity use. In addition, the
6、present situation of database needs theadoption of isomerism database union urgently and itwill be long-standing.Key words: XML; WebServices; Heterogeneous Database; Data Retrieval 目 录1引言11.1课题背景11.2国内外研究现状11.2.1数据转换服务11.2.2数据转换工具及软件11.3本课题研究的意义21.4本课题的研究方法31.5数据库的选择31.6关键技术41.6.1异构数据库41.6.2WebServi
7、ce62需求分析62.1功能需求72.2性能需求82.2.1时间特性82.2.2适应性82.2.3独立性82.3运行需求92.3.1用户界面92.3.2硬件接口92.3.3软件接口93概要设计93.1设计方案93.2数据源的采集设计113.3数据处理设计123.4XML数据文件设计133.5数据导出设计154具体实现164.1开发环境164.2部分编码详解165测试205.1测试方法205.2测试结果20结 论21参考文献22致 谢23声 明241 引言1.1 课题背景随着Internet的飞速发展,网络迅速成为一种重要的信息传播和交换的手段,数据资源的共享成为一个热门话题。如何获取网络上自治
8、、异构、分布的数据并加以综合利用,即数据集成1,成为一个引起广泛关注的研究领域。数据集成的概念是把不同来源、格式、特点性质的数据在逻辑上或物理上有机地集中,实现分布的、异构的、自治的数据共享的主要技术,数据集成一般还应满足用户数据访问的实时性和安全性等方面的要求。数据集成的核心任务是要将互相关联的分布式异构数据源集成到一起,使用户能够以透明的方式访问这些数据源,而不用关心数据源的存储位置和存储方式。数据集成的数据源:包括结构化的数据,如关系数据库;半结构化数据,如XML文档;已经存在的文件系统等2。1.2 国内外研究现状目前,数据库的数据转换方法很多,例如微软公司的SQL Server数据库,
9、就有导入和导出数据的服务,它可以启动数据转换服务(Data Transform Service,简称DTS),来完成各类异构数据库的转换。同时国内也存在一些数据转换工具和软件,比如Beeload等。1.2.1 数据转换服务数据可能以各种格式保存并分布在不同的位置3。数据转换服务(DTS)通过提供一组工具,可以将来自完全不同的源的数据析取、转换和合并到DTS所支持的单个或多个目标数据库以满足需求。通过DTS工具图形化地生成DTS包或使用DTS对象模型编制包,可创建适合自己需要的自定义数据移动解决方案。此服务以向导的形式引导使用者实现DTS的功能,如数据和对象的导入、导出、验证以及在异类 OLED
10、B和ODBC数据源之间的转换。1.2.2 数据转换工具及软件Beeload是第一款国产ETL(Extract Transform Load)工具。它不仅支持Oracle、MS SQL、Sybase等主流数据库的数据抽取及装载,而且还支持文本文件的抽取备份。此外,Beeload内置了大量的API函数,提供强大的数据转换功能;通过直观的图形操作界面,使用户通过简单的拖拽动作即可实现ETL规则的定义,使得元数据管理变得相当容易。同时Beeload 也是一种数据整合软件,可对企业经营过程中所产生的各类业务数据进行抽取、转换和汇总,为数据仓库提供高质量的数据;它还集成了元数据管理、工作流管理及作业调度等
11、功能。除提供直观的图形化操作方式外,还提供强大的脚本解释功能,既适合一般用户,又可充分满足高级用户需要的产品。Beeload数据转换流程图如图1所示可用数据源OracleMySQLMS SQLDB2AccessFoxProFlatFileInterBaseBeeload数据仓库定时采集定时刷新定时抽取操作型系统图1 Beeload数据转换流程图1.3 本课题研究的意义在Internet这样一个动态环境中,各种数据库不断的加入或去除,数据库中的数据也在不断变化,而现在的绝大多数应用是建立在这些分离的数据库基础之上,因而,为了实现信息资源的共享和交流,不同数据库间相互操作和协作不可避免。 这样随着
12、时间的推移和技术的进步,这些由不同核心技术构建的信息系统就像一个个“信息孤岛”,各自有着不同的处理对象、操作方法和专用客户端,在各个环节之间存在着数据交流和部门协同的问题。这些情况都表明:在现代信息化进程中,不同数据库联合使用的要求是非常迫切并会长期存在下去的,并且往往还伴随着一个复杂的分布异构环境。这种分布异构性表现为:场地分布,由LAN或WAN支撑,存在多种网络协议;数据分布,各种形式的数据分散在各节点,以各种形式存在:硬件平台多样化,从台式机、工作站到大型主机等;操作系统多样化,如Windows Netware,各种UNIX以及VMS等:应用平台多样化,包括来自不同开发组织的各种应用软件
13、、中间件和开发工具。 然而,要求用户面对所有这些复杂的分布异构特性,并指望他学会操作每一种数据库是不现实的,在使用中也不方便。对于用户而言,希望屏蔽掉各种层次的异构特性,他们不必知道各个物理数据库系统的分布,不必知道各个物理数据库的机构组成和操作方法,不必自己去进行数据转换和结果汇总,只需通过简单的全局访问就可以得到结果,这正是异构数据库集成技术的主要研究内容。也是其意义所在。1.4 本课题的研究方法本系统的主要功能是实现跨平台的异构数据库系统之间的数据转换,所以结合当前所具备条件提出以下研究方法。(1)通过数据库接口软件与不同的数据库直接连接,如ODBC和JDBC等。在同时检索的数据库数量较
14、少时,使用此技术可在一定程度上解决异构检索问题,但数据库达到一定数量时,处理速度很难保证。这种方式仅适用于对属于本单位的少量异构数据库进行统一检索。 (2)不同数据库间的格式转换4。主要是利用数据库产品本身提供访问异构数据库的功能,以实现在异构环境下建立具有较高性能的分布式数据系统。现在一些图书馆制作的学科导航系统就此利用此方法设计的,其利用一些程序将各种异构数据库的部分数据导入一个数据库系统中,以方便读者访问,但是收录的数据库数量不能太多,此外还涉及版权问题。 (3)运用元搜索引擎的基本原理,利用数据库的Web客户端 进行统一检索。元搜索引擎主要运用在网页信息的搜索方面,但现有各种电子资源数
15、据库都提供相应的客户端接口,因此可利用元搜索引擎的原理对各个异构数据库进行统一检索。这种方法的缺点在于需要对各个数据库的Web处理接口进行详尽分析,各个数据库的Web处理接口如发生改变则需重新设计,接口的稳定性较差。1.5 数据库的选择数据库有许多种,桌面的数据库Access以及大型的关系型数据库SQL Server,Oracle等。面对这么多的数据库选择哪种合适呢?先从它们的功能来说明。1Access数据库Access数据库虽然使用比较简单灵活,但功能并不强大,一些数据库的维护功能不强。另外Access是文件形式的,安全性极低。2Oracle数据库Oracle数据库是比较大型的数据库,适合在
16、大项目中使用,特点如下:1) 支持大数据量、多用户的高性能的事务处理Oracle支持的最大数据量可以达到几百千兆,并可充分利用硬件设备资源。支持多用户同时在同一数据上执行各种数据应用,并保证数据一致性。系统维护具有高的性能,Oracle可持续工作,正常的系统操作(后备或个别计算机系统故障)不会中断数据库的使用。可控制数据库数据的可用性,可在数据库级或在子数据库级上控制。2) 支持分布式数据库和分布处理Oracle为了充分利用计算机系统和网络,允许将处理分为数据库服务器和客户应用程序,所有共享的数据管理由数据库管理系统的计算机处理,而运行数据库应用的工作站集中于解释和显示数据。通过网络连接的计算
17、机环境,Oracle将存放在多台计算机上的数据组合成一个逻辑数据库,可被全部网络用户存取。分布式系统像集中式数据库一样具有透明性和数据一致性。3) 具有可移植性、可兼容性和可连接性。由于Oracle软件可在许多不同的操作系统上运行,以致Oracle上所开发的应用可移植到任何操作系统,只需很少修改或不需修改。Oracle软件同工业标准相兼容,包括许多工业标准的操作系统,所开发应用系统可在任何操作系统上运行。可连接性是指Oracle允许不同类型的计算机和操作系统通过网络可共享信息。3SQL Server数据库SQL Server是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能管理上也
18、比较强大。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQL Server还有更多的扩展,可以用存储过程,数据库大小无极限限制。由上可知SQL Server和Oracle这两个数据库比较适合作为数据检索系统的数据库。1.6 关键技术1.6.1 异构数据库异构数据库系统是相关的多个数据库系统的集合5,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DMBS(DataBase Management System)。异构数据库的各个组成
19、部分具有自身的自治性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构数据库系统的异构性主要体现在以下几个方面: 1. 计算机体系结构的异构 各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。 2. 基础操作系统的异构 各个数据库系统的基础操作系统可以是Unix、Windows NT、 Linux等。 3. DMBS本身的异构 可以是同为关系型数据库系统的Oracle、 SQL Server等,也可以是不同数据模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库共同组成一个异构数据库系统。 异构数据库系统的目标在于实现不同数
20、据库之间的数据信息资源、硬件设备资源和人力资源的合并和共享。其中关键的一点就是以局部数据库模式为基础,建立全局的数据模式或全局外视图。这种全局模式对于建立高级的决策支持系统尤为重要。 大型机构在许多地点都有分支机构,每个子机构的数据库中都有着自己的信息数据,而决策制订人员一般只关心宏观的、为全局模式所描述的信息。建立在数据仓库技术基础上的异构数据库全局模式的描述是一种好的解决方案。数据仓库可以从异构数据库系统中的多个数据库中收集信息,并建立统一的全局模式,同时收集的数据还支持对历史数据的访问,用户通过数据仓库提供的统一的数据接口进行决策支持的查询。 对于异构数据库系统,实现数据共享应当达到两点
21、:一是实现数据转换;二是实现数据的透明访问。在转换的过程中,有时要想实现严格的等价转换是比较困难的。首先要确定两种模型中所存在的各种语法和语义上的冲突,这些冲突可能包括: 1. 命名冲突:即源模型中的标识符可能是目的模型中的保留字,这时就需要重新命名。 2. 结构冲突:如果两种数据库系统之间的数据定义模型不同,如分别为关系模型和层次模型,那么需要重新定义实体属性和联系,以防止属性或联系信息的丢失。 总之,在进行数据转换后,一方面源数据库模式中所有需要共享的信息都转换到目的数据库中,另一方面这种转换又不能包含冗余的关联信息。 数据库转换工具可以实现不同数据库系统之间的数据模型转换,需要进一步研究
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 WebService 数据库 检索系统 设计