资源预览内容
第1页 / 共32页
第2页 / 共32页
第3页 / 共32页
第4页 / 共32页
第5页 / 共32页
第6页 / 共32页
第7页 / 共32页
第8页 / 共32页
第9页 / 共32页
第10页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
目目 录录 1 引言 1 1.1 课题背景 1 1.2 国内外研究现状 1 1.2.1 数据转换服务.1 1.2.2 数据转换工具及软件.1 1.3 本课题研究的意义 2 1.4 本课题的研究方法 3 1.5 数据库的选择 3 1.6 关键技术 4 1.6.1 异构数据库.4 1.6.2 WebService 6 2 需求分析 8 2.1 功能需求 8 2.2 性能需求 9 2.2.1 时间特性.9 2.2.2 适应性10 2.2.3 独立性10 2.3 运行需求 .10 2.3.1 用户界面10 2.3.2 硬件接口10 2.3.3 软件接口10 3 系统设计 .11 3.1 设计方案 .11 3.2 数据源的采集设计 .13 3.3 数据处理设计 .13 3.4 XML 数据文件设计15 3.5 数据导出设计 .17 4 系统实现 .18 4.1 开发环境 .18 4.2 部分编码详解 .18 5 测试 .27 5.1 测试方法 .27 5.2 测试结果 .27 6 结论 .28 7 参考文献 .30 8 致谢 .31 基于 Web Services 的异构数据库的检索系统 1 1 1 引言引言 1.11.1 课题背景课题背景 随着 Internet 的飞速发展,网络迅速成为一种重要的信息传播和交换的手段, 数据资源的共享成为一个热门话题。如何获取网络上自治、异构、分布的数据并加 以综合利用,即数据集成1,成为一个引起广泛关注的研究领域。 数据集成的概念是把不同来源、格式、特点性质的数据在逻辑上或物理上有机 地集中,实现分布的、异构的、自治的数据共享的主要技术,数据集成一般还应满 足用户数据访问的实时性和安全性等方面的要求。 数据集成的核心任务是要将互相关联的分布式异构数据源集成到一起,使用户 能够以透明的方式访问这些数据源,而不用关心数据源的存储位置和存储方式。 数据集成的数据源:包括结构化的数据,如关系数据库;半结构化数据,如 XML 文档;已经存在的文件系统等2。 1.21.2 国内外研究现状国内外研究现状 目前,数据库的数据转换方法很多,例如微软公司的 SQL Server 数据库,就有 导入和导出数据的服务,它可以启动数据转换服务(Data Transform Service,简 称 DTS),来完成各类异构数据库的转换。同时国内也存在一些数据转换工具和软 件,比如 Beeload 等。 1.2.11.2.1 数据转换服务数据转换服务 数据可能以各种格式保存并分布在不同的位置3。数据转换服务(DTS)通过提 供一组工具,可以将来自完全不同的源的数据析取、转换和合并到 DTS 所支持的单 个或多个目标数据库以满足需求。通过 DTS 工具图形化地生成 DTS 包或使用 DTS 对 象模型编制包,可创建适合自己需要的自定义数据移动解决方案。此服务以向导的 形式引导使用者实现 DTS 的功能,如数据和对象的导入、导出、验证以及在异类 OLEDB 和 ODBC 数据源之间的转换。 1.2.21.2.2 数据转换工具及软件数据转换工具及软件 Beeload 是第一款国产 ETL(Extract Transform Load)工具。它不仅支持 Oracle、MS SQL、Sybase 等主流数据库的数据抽取及装载,而且还支持文本文件的 抽取备份。此外,Beeload 内置了大量的 API 函数,提供强大的数据转换功能;通 西南石油大学本科毕业设计(论文) 2 过直观的图形操作界面,使用户通过简单的拖拽动作即可实现 ETL 规则的定义,使 得元数据管理变得相当容易。 同时 Beeload 也是一种数据整合软件,可对企业经营过程中所产生的各类业务 数据进行抽取、转换和汇总,为数据仓库提供高质量的数据;它还集成了元数据管 理、工作流管理及作业调度等功能。除提供直观的图形化操作方式外,还提供强大 的脚本解释功能,既适合一般用户,又可充分满足高级用户需要的产品。Beeload 数据转换流程图如图 1-1 所示 可用数据源 Oracle MySQL MS SQL DB2 Access FoxPro FlatFile InterBase Beeload 数据仓库 定时采集 定时刷新 定时抽取 操作型系统 图图1 1- -1 1 Beeload 数数据据转转换换流流程程图图 1.31.3 本课题研究的意义本课题研究的意义 在 Internet 这样一个动态环境中,各种数据库不断的加入或去除,数据库中的 数据也在不断变化,而现在的绝大多数应用是建立在这些分离的数据库基础之上, 因而,为了实现信息资源的共享和交流,不同数据库间相互操作和协作不可避免。 这样随着时间的推移和技术的进步,这些由不同核心技术构建的信息系统就像一个 个“信息孤岛” ,各自有着不同的处理对象、操作方法和专用客户端,在各个环节之 间存在着数据交流和部门协同的问题。这些情况都表明:在现代信息化进程中,不同 数据库联合使用的要求是非常迫切并会长期存在下去的,并且往往还伴随着一个复 杂的分布异构环境。这种分布异构性表现为:场地分布,由 LAN 或 WAN 支撑,存在多 种网络协议;数据分布,各种形式的数据分散在各节点,以各种形式存在:硬件平台 多样化,从台式机、工作站到大型主机等;操作系统多样化,如 Windows Netware, 各种 UNIX 以及 VMS 等:应用平台多样化,包括来自不同开发组织的各种应用软件、 基于 Web Services 的异构数据库的检索系统 3 中间件和开发工具。 然而,要求用户面对所有这些复杂的分布异构特性,并指望他 学会操作每一种数据库是不现实的,在使用中也不方便。对于用户而言,希望屏蔽 掉各种层次的异构特性,他们不必知道各个物理数据库系统的分布,不必知道各个 物理数据库的机构组成和操作方法,不必自己去进行数据转换和结果汇总,只需通 过简单的全局访问就可以得到结果,这正是异构数据库集成技术的主要研究内容, 也是其意义所在。 1.41.4 本课题的研究方法本课题的研究方法 本系统的主要功能是实现跨平台的异构数据库系统之间的数据转换,所以结合 当前所具备条件提出以下研究方法。 (1)通过数据库接口软件与不同的数据库直接连接,如 ODBC 和 JDBC 等。在同时 检索的数据库数量较少时,使用此技术可在一定程度上解决异构检索问题,但数据 库达到一定数量时,处理速度很难保证。这种方式仅适用于对属于本单位的少量异 构数据库进行统一检索。 (2)不同数据库间的格式转换4。主要是利用数据库产品本身提供访问异构数据 库的功能,以实现在异构环境下建立具有较高性能的分布式数据系统。现在一些图 书馆制作的学科导航系统就此利用此方法设计的,其利用一些程序将各种异构数据 库的部分数据导入一个数据库系统中,以方便读者访问,但是收录的数据库数量不 能太多,此外还涉及版权问题。 (3)运用元搜索引擎的基本原理,利用数据库的 Web 客户端 进行统一检索。元搜 索引擎主要运用在网页信息的搜索方面,但现有各种电子资源数据库都提供相应的 客户端接口,因此可利用元搜索引擎的原理对各个异构数据库进行统一检索。这种 方法的缺点在于需要对各个数据库的 Web 处理接口进行详尽分析,各个数据库的 Web 处理接口如发生改变则需重新设计,接口的稳定性较差。 1.51.5 数据库的选择数据库的选择 数据库有许多种,桌面的数据库 Access 以及大型的关系型数据库 SQL Server,Oracle 等。 1Access 数据库 Access 数据库虽然使用比较简单灵活,但功能并不强大,一些数据库的维护功 能不强。另外 Access 是文件形式的,安全性极低。 西南石油大学本科毕业设计(论文) 4 2Oracle 数据库 Oracle 数据库是比较大型的数据库,适合在大项目中使用,特点如下: 1) 支持大数据量、多用户的高性能的事务处理 Oracle 支持的最大数据量可以达到几百千兆,并可充分利用硬件设备资源。支 持多用户同时在同一数据上执行各种数据应用,并保证数据一致性。系统维护具有 高的性能,Oracle 可持续工作,正常的系统操作(后备或个别计算机系统故障)不 会中断数据库的使用。可控制数据库数据的可用性,可在数据库级或在子数据库级 上控制。 2) 支持分布式数据库和分布处理 Oracle 为了充分利用计算机系统和网络,允许将处理分为数据库服务器和客户 应用程序,所有共享的数据管理由数据库管理系统的计算机处理,而运行数据库应 用的工作站集中于解释和显示数据。通过网络连接的计算机环境,Oracle 将存放在 多台计算机上的数据组合成一个逻辑数据库,可被全部网络用户存取。分布式系统 像集中式数据库一样具有透明性和数据一致性。 3) 具有可移植性、可兼容性和可连接性。 由于 Oracle 软件可在许多不同的操作系统上运行,以致 Oracle 上所开发的应 用可移植到任何操作系统,只需很少修改或不需修改。Oracle 软件同工业标准相兼 容,包括许多工业标准的操作系统,所开发应用系统可在任何操作系统上运行。可 连接性是指 Oracle 允许不同类型的计算机和操作系统通过网络可共享信息。 3SQL Server 数据库 SQL Server 是基于服务器端的中型的数据库,可以适合大容量数据的应用,在 功能管理上也比较强大。在处理海量数据的效率,后台开发的灵活性,可扩展性等 方面强大。因为现在数据库都使用标准的 SQL 语言对数据库进行管理,所以如果是 标准 SQL 语言,两者基本上都可以通用的。SQL Server 还有更多的扩展,可以用存 储过程,数据库大小无极限限制。 由上可知 SQL Server 和 Oracle 这两个数据库比较适合作为数据检索系统的数 据库。 1.61.6 关键技术关键技术 1.6.11.6.1 异构数据库异构数据库 异构数据库系统是相关的多个数据库系统的集合5,可以实现数据的共享和透 基于 Web Services 的异构数据库的检索系统 5 明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的 DBMS(Database Management System) 。异构数据库的各个组成部分具有自身的自治 性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和 安全性控制。异构数据库系统的异构性主要体现在以下几个方面: 1. 计算机体系结构的异构 各个参与的数据库可以分别运行在大型机、小型机、工作站、PC 或嵌入式系统 中。 2. 基础操作系统的异构 各个数据库系统的基础操作系统可以是 Unix、Windows NT、 Linux 等。 3. DBMS 本身的异构 可以是同为关系型数据库系统的 Oracle、 SQL Server 等,也可以是不同数据 模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库共同组成一 个异构数据库系统。 异构数据库系统的目标在于实现不同数据库之间的数据信息资源、硬件设备资 源和人力资源的合并和共享。其中关键的一点就是以局部数据库模式为基础,建立 全局的数据模式或全局外视图。这种全局模式对于建立高级的决策支持系统尤为重 要。 大型机构在许多地点都有分支机构,每个子机构的数据库中都有着自己的信息 数据,而决策制订人员一般只关心宏观的、为全局模式所描述的信息。建立在数据 仓库技术基础上的异构数据库全局模式的描述是一种好的解决方案。数据仓库可以 从异构数据库系统中的多个数据库中收集信息,并建立统一的全局模式,同时收集 的数据还支持对历史数据的访问,用户通过数据仓库提供的统一的数据接口进行决 策支持的查询。 对于异构数据库系统,实现数据共享应当达到两点:一是实现数据转换;二是 实现数据的透明访问。 在转换的过程中,有时要想实现严格的等价转换是比较困难的。首先要确定两 种模型中所存在的各种语法和语义上的冲突,这些冲突可能包括: 1.命名冲突:即源模型中的标识符可
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号