数据集成是信息系统集成的基础,它是把不同来源、格式和质量的数据通过逻辑或物理的方法集中到同质数据环境中,实现企业级数据的全面共享。通常采用数据联邦、基于etl和数据仓库以及基于soa(面向服务架构)等方法来实现数据集成。
数据联邦
数据联邦是把不同分布的数据源整合产生出虚拟数据源或者数据服务(data service)的过程。整合后的数据可以被看作一个单一数据源,提供统一的访问方法(包括jdbc,odbc,nfs,soap)。数据联邦具有很大的灵活性,能整合异构数据库,并可集成来自非关系型数据源(如电子邮件和文本文件)的数据。此外,数据的联邦式视图构建起来比数据仓库更快,更易于修改。但其缺点在于不适合大批量数据。
基于etl和数据仓库
etl通过数据抽取、数据转换和数据装载的连续操作,将不同来源、不同格式的数据抽取到数据仓库的ods ( operational data store)层,经过转换,加载存储到星型结构的dw (data warehouse)层,再向关系型数据库或多维数据库进一步汇总加载,以满足不同主题的展现应用。这种方法实现了对跨平台、多系统数据的高效集成。但其缺点在于传统etl和数据仓库基本上不具备实时处理能力,其数据抽取操作以定时方式从业务系统中抽取。
基于soa
soa是指为了解决在internet环境下系统集成的需要,通过连接能完成特定任务的独立功能实体实现的一种软件系统架构。soa是一个组件模型,它将企业中各个系统应用程序的不同功能单元抽象为服务,通过这些服务之间定义良好的接口和契约联系起来。典型的soa实现(如图1所示)包含多个层次,限于篇幅,详细介绍见相关参考文献。
基于soa的集成方法采用基于元数据和开放标准的共享服务方式,通过可重用设计和统一的方法实现数据的访问、集成和提交。其具备广泛的连接性,支持多种类型、结构和来源的企业数据集成,并且具备面向异构it环境变化的应变能力。