admin 管理员组文章数量: 1184232
2024年4月20日发(作者:java数组定义形式)
浅析金融报表系统的数据集成问题
摘要 本文主要主要介绍了在金融报表系统中的数据集成模块的
设计及实现。其中数据集成模块中,采用了xml作为统一数据格式,
然后针对各种不同数据源提供不同的专用接口,从而将异构数据源
进行集成。对各种当今的异构数据集成模式进行了分析探讨。
关键词 金融报表;数据集成;系统设计
中图分类号tp39 文献标识码a 文章编号
1674-6708(2010)24-0227-02
金融报表系统的一个重要目标是能够集成已有系统的数据,这也
是整合各个分散孤立系统所面临的一个重要问题。本文在研究各种
异构数据集成的基础上,选择基于xml的数据集成方案,下面对该方
案的设计及实现进行详细的说明。
1 实现方案
在该系统中负责集成数据任务的是数据生成器模块,它将从异构
数据源中提取和生成统一数据格式的报表数据。为了能够从不同数
据源中进行获取数据,数据生成器需要进行异构数据源的统一处
理。集成异构数据源的方法一般有两种。第一种是将原有的数据移
植到新的数据管理系统中来,为了集成不同类型的数据,必须将一
些非传统的数据类型转化成新的数据类型。第二种方法是利用中间
件集成异构数据库,中间件位于异构数据库系统(数据层)和应用程
序(应用层)之间,向下协调各数据库系统,向上为访问集成数据的
应用提供统一数据模式和数据访问的通用接口。各数据库的应用仍
然完成它们的任务,中间件系统则主要集中为异构数据源提供一个
高层次检索服务。显然,中间件系统模式是实现异构数据集成较理
想的解决方案[1]。
实现数据抽取的关键是从统一的xml数据中进行查询和统计以得
到需要的报表数据。数据生成器是在处理报表之前将来自不同数据
源的数据统一转换为一致的xml格式数据。当数据被转换为统一的
数据格式后,数据在各个模块之间就可以方便地进行交换,这使得
所有模块对数据的处理都能够以统一的方式进行。我们可以使用
j2ee架构中数据表示和交换功能的ejb(enterprise javabean,业
务逻辑代码)组建中持久化服务的一部分,xml文件可以容易地读取
到一个对象模型中。
2 数据生成器的架构
数据生成器的架构分为3层,如图1所示。
其中数据抽取层该层负责提供各种来自不同数据源的数据,如数
据库、已有的报表文件和其它文件数据。集成层该层完成将不同格
式的数据与xml数据模型之间的转换。它将数据先存储到一个集成
模式的存储结构中,然后完成目标格式与原有格式之间的映射关
系。此外,它还提供对数据的各种查询操作。上层应用层该层主要
是对集成层提供的接口进行封装,以便于对数据的各种处理操作。
它提供一个统一的数据视图来查看数据。
3 数据抽取层
数据抽取层处于系统的最低层,是系统的数据提供者,主要功能
是提取和集成分布在多个异构数据源(数据库,知识库及构件库)上
的信息。这一层采用 wrapper(包装器)技术实现将一个从中介层得
到的查询,翻译成能够在经过封装的数据源上执行的操作,将查询
结果抽取并打包到一个xml文档,最后将该文档返回给集成层。可
以考虑使用wrapper组件,即:
wrapper组件由两部分组成:wrapper生成器和wrapper实例(简
称wrapper)。wrapper生成器用于为查询某个确定的站点或站点集
合,构建wrapper的输入是用一种wrapper规范语言书写的规格说
明。规格说明必须能够表达以下内容:数据源接口、数据模型、从
用户到数据源本地操作的查询映射、数据源的查询能力。通常为一
个数据源生成一个有效的wrapper所必须的信息是使用dtd来描述
的。wrapper生成器的输出是一个可以执行的wrapper实例,该
wrapper能够接受由wrapper规范语言定义的查询。我们采用关系
wrapper能决定关系模型和dom(document object model,域对象模
型)对象数据模型之间的映射。因此,可以采用dtd(document type
definition,文档类型定义)来描述数据库中关系表的数据模式。
4 集成层
集成层最重要的问题就是数据的转换问题,将来自不同数据源的
各种数据转换成集成系统能进一步处理的统一格式。
4.1 集成层的专用接口
专用接口主要完成xml数据模型与数据源的双向转换。它用xml
描述集成数据,用xml文档和格式文件dtd表示集成模式与数据源
之间的映射。xml数据模型与数据库的转换主要体现在xml的dtd
和数据库数据模型的相互转换。从dtd转换到数据库模型的原理如
下:
1)从dtd生成一个关系模式,并在此基础上建立关系数据库;
2)对dtd中的每一个元素,产生关系数据库的一个表和一个主键
列;
3)对每一个有混合内容的元素,产生一个独立的表,并通过父表
的主键与父表相连;
4)对元素类型中的每一个单一值的属性,按顺序出现的子元素,
产生一个单独列,该列可以允许为null类型;
5)对有多个值的属性和可以出现多次的子元素,需要创建一个单
独的表来存储这些值,并通过父表的主键与父表相连;
6)对每一个包含元素或混合内容的子元素来说,通过父表的主键
把父元素与子元素连接起来。
从数据库模型到dtd的转换相对容易一些,分为3步:对一个表,
创建一个元素;对表中的每一列,创建一个属性或只是一个子元素;
根据表中的每一个主键/外键关系,创建该表元素的子元素。
同时相对于数据库系统的意义,xml文档与其他文本文件并没有
什么区别。在将它与结构化数据或非结构化数据进行转换的时候,
关键问题是如何将关系数据库表达的结构与约束映射为xml。根据
映射关系的建立方式不同,我们可以采用基于模板驱动的映射方
法。这种映射的步骤比较简单,只要给出模板,就可以快速地生成相
应的xml文档。总体来说,专用接口模块就是将由各数据源的数据
到一个xml数据模型的双向转换。
4.2 集成方法
如何实现对各个数据源的集成存取,即如何将用户对继承视图的
存取转换成对异构数据源的操作。在本系统中采用的是gav方法。
采用为集成模式中的每一个虚拟对象类创建一个能动态生成xml文
档的asp文件,说明如何从信息源得到该虚拟对象类的对象,如何将
源数据转换成集成数据。当用户要访问集成数据时,系统按下列步
骤进行查询转换[2]:
1)根据用户提出的查询条件,生成一棵查询树;
2)将诸如选择、投影操作尽量推向叶节点(即数据源);
3)将对各数据源的操作追加到相应的asp文件中;
4)调用asp文件,生成来自多数据源的包含用户所需数据的xml
文档;
5)选择合适的xsl,应用于所生成的xml文档提交给用户。
5 上层应用层
为了能够提供一个统一的数据视图,需要设计一个公共模型,以
便进行统一的处理。同时还需要在这个公共模型上定义一些基本的
运算,使之能够完成数据查询、存取等具体功能。
本集成系统为用户提供根据特定集成应用而设计的一个虚拟集
成视图。虚拟集成视图是一个虚拟关系(或虚拟对象类)集合。采用
xml作为集成系统的公共模型,用一个dtd描述集成层的一个虚拟对
象类,一个元素对应虚拟对象类的一个属性,所有虚拟对象类的dtd
组成集成系统的集成模式。
根据不同用户的不同需求,可定义不同的xsl样式表,来屏蔽一些
对象或对象的属性,来改变对象的显示形式,提供不同的用户视图。
6 结论
本文主要介绍了在金融报表系统中的数据集成模块的设计及实
现。数据集成模块中,采用了xml作为统一数据格式,然后针对各种
不同数据源提供不同的专用接口,从而将异构数据源进行集成。异
构数据集成模式具有以下特点:
1)在分布、异构环境下的异构数据集成方案和构架结构,基于术
语标准化的一致性操作平台。兼容不同数据库结构和平台;
2)灵活的资源共享方式,可以根据自身需要提出访问请求;
3)实现模块之间逻辑和技术的低耦合性;
4)适合web应用,便于用户通过internet访问;
5)一定的扩展性和可移植性。在数据源扩展时,只要配相应的数
据接口和更新元数据即可,易于扩展。统一格式的数据可以通过企
业域进行跨平台交换,具有一定的可移植性。
参考文献
[1]余彤鹰.复杂系统的层级原理与模型驱动软件体系结构
[eb/ol],2002,://2 .
[2]/guanligongcheng/200807/30-
.基于xml的异构数据集成模式研究,2008,7.
[3]范贵生,朱尚明.基于xml的远程报表系统的开发模型及实
现.现代计算机,2005,3:89-92.
版权声明:本文标题:金融报表系统的数据集成问题 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1713560714a640793.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论