期刊库

教育   经济   科技   财会   管理   
医学   法学   文史   工业   建筑   
农学   水利   计算机   更多>>
 首 页    论文大全   论文精品    学术答疑    论文检测    出书咨询    服务流程    诚信通道    关于我们 

基于Web服务异构数据库智能集成的研究(2)

人气指数: 发布时间:2014-04-02 21:06  来源:http://www.zgqkk.com  作者: 李龙凤等
分享到:

 

  2 基于Web服务的分布式异构数据库数据集成系统

  2.1 用户需求分析

  在该异构数据查询系统中,共有三种用户参与,分别是各异构数据库管理员、集成系统管理员和普通用户。其中集成系统管理员享有最高权限,可以创建和管理用户、审查和批准需要加入的异构数据源、获取异构数据源的元数据、合成并管理全局数据库模式等;各异构数据库管理员能够登陆数据源注册系统,根据需要填写注册信息,选择需要共享的表和字段并注册;普通用户只能登陆查询系统,根据相关的查询权限对数据进行查询。系统用户如图 3所示。

  图 2 系统用户

  2.2 体系结构

  Web服务集成中间件系统体系自下而上包括数据库层、数据集成层和统一应用层。其中,底层的各个异构数据源构成了系统的数据库层;数据集成层采用中间件技术,封装了异构数据库集成系统的业务逻辑;各种应用程序和对应的访问接口构成了系统的统一应用层。数据库智能集成系统框架图如图2所示。

  图3 基于Web服务的分布式异构数据库智能集成系统框架图

  该系统采用 B/S模式,构成了客户/服务器三层架构。采用这种设计有以下几种优势:

  (1)安装升级简便。通过浏览器访问数据库简化了客户端。在升级软件的时候,不需要对客户端升级。

  (2)易扩展维护。所有应用程序均在服务器端,开发维护过程可集中在服务器端,不需要考虑数据库端和客户端。

  (3)可移植性强。本文采用JavaBean技术,可以在不同Web服务器、不同操作系统上运行,而且可以在不同的平台间移植,不需要重新编译。

  (4)可靠性强。多层体系结构可以有效地优化系统总体性能,提高系统的可靠性和伸缩性。

  (5)数据智能更新快。综合包装器中的智能更新模块采用Spring框架,该方法中Quartz任务定时扫描更新各异构数据库上传的XML描述文档,充分保证了抽象数据表的实时性、智能性和有效性。

  2.3 功能模块设计

  (1)客户端功能模块

  统一应用层也就是用户界面,即异构数据库集成系统的使用者。用户可以通过数据集成层来访问异构数据库的共享数据资源。本系统不需安装客户端软件,直接利用浏览器作为客户端用户的界面,可以把XML表示的数据转换成为Html格式,直观方便,非常适合异构数据集成系统[8]。

  (2)服务器端功能模块

  本文采用Tomcat作为Web服务器。Tomcat作为一个优秀的开源Web应用服务器,是Apache Jakarta的子项目之一。其性能稳定、技术先进,而且免费开源,因而深受软件开发商和Java爱好者的认可,Web应用服务器目前使用广泛。

  数据库服务器主要是提供实际的数据管理功能,为数据站点存储数据集。该系统主要支持的数据库服务器有Oracle、SQL Server、MySql、Access 等。

  (3)数据模式转换功能模块

  数据集成层是实现异构数据库中数据转换的核心,目的是访问各个数据源,集成数据源信息,协调各数据源间信息。数据集成层在各局部数据提供的共享数据的基础之上建立一个全局的虚拟视图,并不存储实际的数据。具体包括:元数据DB、元数据管理器、综合包装器、中介器、应用层访问统一接口、异构数据库统一接口,下面分别对各模块加以介绍。

  元数据DB负责储存各异构数据库的元数据库信息。元数据库信息包括注册信息、连接信息URL、各元数据库用户与全局用户的匹配关系、模式映射信息、访问策略信息等。元数据DB支撑整个系统的运行[9]。

  元数据管理器负责制定集成系统的全局模式与局部数据库的模式之间的转换规则。

  中介器负责异构数据库的注册、公共模型的生成和全局查询请求的接收。中介器由三个组件构成,包括:异构数据注册模块、查询规划模块和结果合并过滤模块。其中,异构数据注册模块的主要功能是:在共享数据注册阶段,负责公共模型的建立以及异构数据库的共享注册;查询规划模块的主要功能是:在数据集成阶段,将客户端提交的基于全局数据库的标准查询分解成针对各个异构数据库的子查询,并提交到相应的包装器;结果合并过滤模块的主要功能是:将各异构数据库查询返回的 XML文档进行合并,形成完整统一的查询结果,反馈至客户端浏览器。

  综合包装器的功能是实现数据位置和访问的透明,对异构的数据进行包装。综合包装器由智能更新模块、查询结果转换模块和数据库操作模块三个组件构成。智能更新模块采用spring框架的quartz任务定时的扫描由不同的异构数据库上传的XML描述文档,通过解析这些XML文档,实现数据自动更新,从而保证抽象数据表的有效性、实时性、智能性。查询结果转换模块负责将SQL查询的结果转换为XML文档。数据库操作模块负责连接后台各个异构数据库,包括初始化数据库连接、分配连接、封装数据库基本操作、关闭连接等功能。

  数据集成层对外提供了两个统一接口,即应用层访问统一接口和底层异构数据库访问接口。其功能是屏蔽各数据库的差异,提供数据的透明访问,使得使用者无需知道数据的数据源模式及具体的物理位置等信息,只需通过系统定义的与具体数据源无关的SQL语句进行访问。

  3 关键技术分析

  3.1 数据映射

  数据转换是中间件层的首要任务,数据转换的目的是将不同数据源转换成统一格式,为各异构数据源的局部模式提供统一的全局模式。关系数据库是目前市场上的主导,XML文档的结构和关系数据库的数据结构的差异较大。关系数据库用二维表存储数据,用主键和外键的方式体现数据之间的关系;而XML文档采用层次嵌套结构,数据类型、数据长度都不规则,通过子元素与父元素嵌套的形式体现数据间的关系。为了采用SQL工具操作XML数据,在关系数据库和XML之间架起桥梁,或将XML转换成表格式的表单,必须解决XML与关系数据库间的映射[6]。

  (1)关系模式到XML 模式映射

  转换的算法可如下描述:

  Input:关系数据库

  Output:XML 模式

  Step 1:将关系模式从关系数据库中提取出来。

  Step 2:用 SQL 语句来重构数据库中的约束。

  Step 3:由关系模式重构映射结构。

  Step 4:由映射结构和重构的结果生成 XML Schema 模式。

  Step 5:将从在XML文档中嵌入从数据库提取出的数据。

  Step 6:对XMLSchema 格式文档及所表示的数据 XML 文档进行输出。

  整个流程如图3所示。

  图 4 关系模式到XML模式的映射

  (2)XML 模式到关系模式的映射

  转换算法如下:

  Input:XML Schema文档

  Output:关系模式

  Step 1:形式化描述XML Schema文档。

  Step 2:从 描述的XML Schema 文档中,提取元素组成元素树。

  Step 3:映射转化元素树,输出关系数据数。

  Step 4:将得到的关系数据树动态合成为SQL语句。

  Step 5:使用 SQL 语句将 XML 文档中的数据嵌入到关系数据库.

  关系模式在转化前后必须保持一致,其转换流程如图5所示。

  图 5 XML模式到关系模式的映射

  3.2 Quartz定时调度法

  Spring框架的Quartz作为流行的企业级任务调度技术,任务调度为应用系统请求的特定任务执行操作安排,Spring为Quartz的重要组件提供Bean风格的扩展类。Spring容器生命周期和其环境下创建的组件对象,争对具体任务可以执行停止或启动。在Spring的开发应用中可以充分利用不同形式的任务定时调度功能。

  包装器的智能更新模块,就是采用Spring的任务定时调度方法,扫描各异构数据库上传的 xml 描述文档,实时更新抽象数据表。更新抽象数据表可直接通过调用JDK Timer中schedule来执行,执行过程中的重要参数有间隔时间、启动时间延迟、任务对象[3]。

  Spring引入了TaskScheduler,不同形式的任务定时调度。按某个时间间隔重复执行任务,也可以在给定时间点执行一次任务,该方法中的Cron触发器可以灵活定义执行时间[3]。

  例如:scheduler.schedule(task, new CronTrigger(″* 206-15 * * MON-FRI″));在每周星期一到星期五的6点20分至15点20分执行设定的任务。


期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
  本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


  【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

 
QQ在线咨询
投稿辅导热线:
180-1501-6272
微信号咨询:
fabiaoba-com
咨询电话:18015016272 投稿邮箱:zgqkk365#126.com(#换成@)
本站郑重声明:文章只代表作者观点, 并不意味着本站认同。所载文章、数据仅供参考,使用前请核实,风险自负。
部分作品系转载,版权归原作者或相应的机构   若某篇作品侵犯您的权利,请来信告知.版权:周口博闻教育咨询有限公司 
Copyright © 2005-2023 . 期刊库 版权所有