基于SOA的企业数据集成应用
 

2011-06-20 来源:网络

 

摘要: 实现企业数据集成,不但要考虑现阶段企业各独立系统急需集成的数据范围,还要从长远发展考虑数据集成的架构、能力和技术等方面内容。

关键词: 面向服务架构数据联邦数据仓库数据服务

通过多年信息化建设,安徽烟草已经建成营销、专卖、烟叶、财务、物流、经济运行、人力资源,OA等系统,但随着基于供应链管理、面向客户的服务体系建设以及业务协同的现代企业管理需求,需要以数据集成的方法实现信息服务。而实现企业数据集成,不但要考虑现阶段企业各独立系统急需集成的数据范围,还要从长远发展考虑数据集成的架构、能力和技术等方面内容,否则多种数据集成技术的叠加会让IT基础架构变得更加复杂和脆弱,同时造成管理成本的大幅增加,一旦企业引入外包、SaaS等新的服务或应用,架构的复杂性会继续上升

1、数据集成的实现方法

数据集成是信息系统集成的基础,它是把不同来源、格式和质量的数据通过逻辑或物理的方法集中到同质数据环境中,实现企业级数据的全面共享。通常采用数据联邦、基于ETL和数据仓库以及基于SOA(面向服务架构)等方法来实现数据集成。

1.1数据联邦

数据联邦是把不同分布的数据源整合产生出虚拟数据源或者数据服务(Data Service)的过程。整合后的数据可以被看作一个单一数据源,提供统一的访问方法(包括JDBC,ODBC,NFS,SOAP)。数据联邦具有很大的灵活性,能整合异构数据库,并可集成来自非关系型数据源(如电子邮件和文本文件)的数据。此外,数据的联邦式视图构建起来比数据仓库更快,更易于修改。但其缺点在于不适合大批量数据。

1.2基于ETL和数据仓库

ETL通过数据抽取、数据转换和数据装载的连续操作,将不同来源、不同格式的数据抽取到数据仓库的ODS ( Operational Data Store)层,经过转换,加载存储到星型结构的DW (Data Warehouse)层,再向关系型数据库或多维数据库进一步汇总加载,以满足不同主题的展现应用。这种方法实现了对跨平台、多系统数据的高效集成。但其缺点在于传统ETL和数据仓库基本上不具备实时处理能力,其数据抽取操作以定时方式从业务系统中抽取。

1.3基于SOA

SOA是指为了解决在Internet环境下系统集成的需要,通过连接能完成特定任务的独立功能实体实现的一种软件系统架构。SOA是一个组件模型,它将企业中各个系统应用程序的不同功能单元抽象为服务,通过这些服务之间定义良好的接口和契约联系起来。典型的SOA实现(如图1所示)包含多个层次,限于篇幅,详细介绍见相关参考文献。

基于SOA的集成方法采用基于元数据和开放标准的共享服务方式,通过可重用设计和统一的方法实现数据的访问、集成和提交。其具备广泛的连接性,支持多种类型、结构和来源的企业数据集成,并且具备面向异构IT环境变化的应变能力。

2、基于SOA实现企业数据集成

立足易于集成和管理,可快速响应业务流程调整和客户需求的目的,考虑到SOA特有的松散耦合、隔离关注、模块化、可重用性和数据集成有着紧密依存的关系,因此,安徽烟草在实施数据集成项目时引人了基于SOA的集成方法。

2.1实现方法

本文采用Web Service技术在服务层和组件层对数据进行集成,将需要对外暴露的业务功能和数据存取封装成通用的服务,将已实现的服务发布到服务注册器,通过企业服务总线ESB,供其他服务调用者进行查找和绑定。具体做法是:

(1)进行企业数据资源规划,建立企业整体数据模型,实现统一信息资源层次体系、统一数据元素标准和统一信息编码;

(2)建立元数据管理平台,规范数据定义。按照目标驭动的原则,采取增童和渐进的方式逐步实现数据的唯一性、准确性、完整性和时效性,实现数据的共享共用,解决数据层面的信息孤岛问题;

(3)建设OLTP数据中心层,建立中央集中业务信息数据库。此数据库存储了分布于各独立业务系统的实时业务或者其它类型业务处理的主数据信息(如客户数据、产品数据、员工信息数据、供应商数据等)。

对于分散在多个应用“竖井”中的企业数据,由企业服务总线ESB接收CDC以消息方式发送过来的实时捕获各业务数据库发生变化的数据(如图2所示),按照在元数据管理平台设定的规则进行相应的消息格式转换,把信息存储到中央集中业务信息数据库中,从而让中央库中存储的数据与业务数据库存储的数据保持实时一致性。同时,企业服务总线作为数据服务的统一人口,所有需要请求相应数据服务的消费者应用,必须向它发起请求,由它做相应的控制,并且由它把请求转发给具体数据服务的提供者。

(4)优化OLAP数据中心层。在ODS数据库层,笔者采用DB2 V9. 7数据库系统作为数据基础软件平台。在DB2数据库中建立相应的数据库实例和数据库,把相应生产数据库的数据通过相应的备份/恢复,导出/导人的方式把数据存储到DB2数据库中。然后利用ETL工具,根据用户需求建立数据模型,分别对ODS层、数据仓库、数据集市的数据进行抽取,清洗,转化,最终装载到立方体中。

(5)按业务需求开发数据服务,并将数据服务资源注册到服务管控平台,挂接到ESB总线上,实现各部门应用间的数据交换、数据整合、信息共享、应用互访、业务协同等需求。服务管控平台的重点是关注服务生命周期的一些方面,例如:计划、发布、发现、版本治理、管理和安全性,避免服务在发布、更新、退出方面可能导致的混乱失控。

由业务系统生产数据库、OLTP数据中心层和OLAP数据中心层构成了企业数据环境的主体,它们通过企业内部网无缝连接,构成了一个统一整体。

2.2应用效果

基于SOA集成方法在安徽烟草的应用,实现了高度的数据整合,达到以下效果:

一是定时启动相应的ETL工具从ODS数据库中进行相应的数据抽取以完成数据的转换/清洗,然后装载到数据库中,既满足了对生产数据信息的整合,又避免了对生产数据库性能的影响。

二是通过依次构建ODS、数据仓库和数据集市,并利用商务智能平台为领导和管理部门提供了多层次的数据应用。

三是建立OLTP数据中心层,基于中央集中业务信息数据库既满足了网上订货等实时业务系统运作的需求,又解决了基于OLAP数据中心层的效率、负载等问题。

四是采用基于SOA的系统架构,将不同业务系统的数据资源和资产封装成数据服务,使集成变得更加易于管理,复杂性降低了。同时,对供应链管理、面向客户的服务体系建设以及业务协同的现代企业管理模式的变革适应性更强。

3、结束语

本文基于SOA系统架构,提出了一种企业数据集成的应用方案。该方法较好地解决了数据源分散、异构数据库难以访问、数据接口复杂、存储形式多样、数据质堡较低等数据集成问题。下一步笔者将继续在加强数据质量管理及元数据管理上做进一步的应用研究,以达到最佳数据集成效果,最大程度地发挥数据价值。



基于SOA的工作流(WF)整合
SOA 100问 - 问与答
SOAP 应用模式:处理与性能
ESB架构之企业实施案例
基于SOA架构的企业集成系统
基于SOA的体系架构设计
更多...   


面向应用的架构设计实践
单元测试+重构+设计模式
软件架构师—高级实践
软件架构设计方法、案例与实践
嵌入式软件架构设计—高级实践
SOA体系结构实践


某第三方电子支付企业 SOA架构设计
某电子企业 SOA应用
中国移动 SOA培训
北京大学 SOA架构设计实践
友邦保险 SOA架构设计
上海 SOA架构实践
山东移动通信 SOA体系结构实践
更多...   
 
 
 
 
 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号