论文摘要:随着计算机、通信和网络技术的发展,高校在不同时期建立的封闭系统,形成了“信息孤岛”。数据集成是突破“信息孤岛”最为有效的方法。因此,本文在对异构数据集成进行研究分析后,再结合高校实际情况,提出了一个基于数据集成工具Oracle Data Integrator(ODI)的数据集成设计方案。
论文关键词:数据集成,异构数据库
0引言
目前很多高校在信息化建设过程中的现状是:一方面由于学校早期的信息化管理缺乏统一的规划和信息标准,各部门管理信息系统在很大程度上是在独立运行,也就是大家通常说的“信息孤岛”,而且在缺乏总体规划的情况下,应用系统建设的越多,“信息孤岛”现象就越严重。另一方面,随着学校信息化建设步伐的加快,部门间信息流通的需要会越来越强烈,信息标准化和信息资源的共享及流通问题越来越突出。
具体表现在:第一,学校信息化建设的应用领域不断延伸,已覆盖了全校办公、教学、科研、财务、图书等学校的各项事务。第二,部门信息系统之间的差别,如各部门根据自己的业务需要,建立了各种信息系统。它们之间存在的开发工具不同,操作系统不同等情况;第三,学校的信息资源由于缺乏统一标准和规范而无法实现共享,影响着学校教育信息基本数据的收集、交换和应用。第四,全部重新改造学校各部门管理信息系统和相关工作人员培训的成本太高,周期太长。
综上所述,在学校各部门信息系统已经存在的情况下,在全校范围内需要建立一个统一的信息集成平台对分散在各应用系统中的异构数据进行整合,使校园内的各个信息管理系统达到无缝连接。
本文提出了一种基于ODI的异构数据集成方案,与其他异构数据集成方案相比,它的特点是可以方便灵活得将新的业务系统集成进来,具有很好的扩展性。而且具有不同于传统工具的独特核心特性—异构E-LT、声明设计和知识模块等,符合高性能、灵活性、高生产率、模块化的集成平台的需求。
1异构数据集成
1.1异构数据集成的模式
1、集成模式(联邦数据库)
集成模式对应的就是联邦数据库的模式,即从集成的应用角度,在异构数据的情况下,提供统一的访问视图来满足应用对数据的集成需求。
2、复制模式(数据仓库方法)
复制模式对应的就是数据仓库的建设方法,也就是通常所说的ETL过程,目的是把数据进行复制,然后加以利用的过程。
1.2异构数据集成的难点
1、异构(体系异构、模式异构)
数据集成的异构,一方面是体系上的异构,主要是指各类差异化较大的数据源类型,异构体现在对数据的描述的差异,例如Oracle的Char类型,对应Excel中的Varchar,对应JMSQueue中的FixString。这种映射关系体现了不同体系数据源的异构性。
另一方面,即使对于同一种体系下的数据源,例如同样是关系型数据库,Oracle与DB2也存在模式上的异构。具体体现为Oracle的LongRow类型,对应为DB2UDB中的BLOB类型,对应于DB2/400的Varchar()forbitdata。这种类型的异构就是模式上的异构体现。
2、语义转换(语义识别、语义冲突)
数据集成的过程中,最大的障碍就是找到源和目标的映射关系,这也是数据处理的最为复杂、最难以处理的过程。映射关系就是要找到两者在语义定义上是完全一致的,在此基础上进行关联。
对于数据映射过程,一方面需要找到数据的语义定义,即数据的数据说明,包含数据的名称、类型、长度、范围、取值规则以及范例,另一方面要针对语义进行辨别,找到两者的对应关系和匹配法则,这样才能进行映射关联,并在映射过程中进行等值语义的处理。
另一方面,在语义处理上,还需要特别注意处理语义上的冲突问题。即源和目标在语义上存在的差异,尤其是容易由程序辨识的部分,更需要自动化的处理。常见如下的语义冲突:
(1)数据类型上的语义冲突,例如Varchar类型到int类型的映射。
(2)数据长度的语义冲突,例如源是varchar(40),目标是varchar(20)。
(3)数据范围的语义冲突,例如源是一张字典表,目标是两外一张字典表。
3、性能(交换性能、实施效率)
数据集成很重要的一个方面,就是性能。这里性能指的是集成性能和集成实施的性能(也可以说是实施效率)
一般比较常见的性能,都指的是集成性能,即数据从源到目标的数据集成或者数据集成的性能。这个性能又和集成的需求存在关联关系。一般对于全量数据同步,都要求能够进行定时的集成,那么性能主要体现在批量数据的处理能力上。
对于实施效率,对于数据集成的实施环节,面对可能多面的需求以及新增的集成内容,也是客户关注的重要内容。集成实施过程要能够简单、模式化、流程化以及易用、易扩展,这样无论是在项目的实施过程,还是应对将来变化的情况,都能做到高效实行。
4、完整性(数据完整性、约束完整性)
数据集成的完整性,体现在两个方面:数据的完整性和约束的完整性。
(1)数据的完整性,主要体现在数据的事务处理方面。对于数据集成的过程,要从源端把数据取出,并加载到目标的这个过程,必须要有完整的事务保证,才能算是数据的完整。如果没有按照约定加载数据,那么事务必须要进行回滚保证。例如增量的数据集成,如果存在增量信息,那么如果增量信息没有有效地写入目标,那么必须要把增量数据进行回滚保存,以便下次任务继续进行,保证整个项目的事务完整。 1/3 1 2 3 下一页 尾页 |