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.


本文标签: 数据 集成 数据源