数据集成是什么呢?它是指异构数据之间的同步。所谓异构数据是指不同种类,不同版本的数据库、文件、Mail等之间的同步。异构数据的同步前提是要能够准确获取数据源的元数据结构以及异构数据之间的映射方式:包括语法和语义上的映射。数据集成可以认为是ETL(BI上的定义为:抽取-转换-清洗-过滤-加载);但更强调自动化过程管理。
在实现机制上,应包括常见的集成模式:Split/Merge/Route/PS等;另外还应该具备建模(元数据管理)和治理(Governace)功能。
数据集成有什么意义呢?主要是实现数据中心,例如企业级SID;或者遗留系统在数据层面的集成。在建立全局SID的基础上,可以构建很多有意义的东西:例如Portal/CMS,报表,数据搜索,挖掘等等,这些可以概括地称为BI,即商业智能。因此,数据集成有两个层面的意义:1)操作层面2)分析层面。
目前,数据集成的产品有Oracle/BEA的AqulogicDSP,Vitria的BW,还有就是开源的emule/ServiceMIX/SpringIntegration等。不过据我所知,开源的东西还没有支持RDBMSAdapter的,而且还有某些重要功能的缺失例如监控、建模等。
一般来讲,数据集成的实现方式可以分为一下四个步骤:
1.界定数据交互的项别与内容,如:PDM系统和ERP系统之间的BOM数据;
2.指定数据交互周期,一天一次,还是一周一次;
3.选择交互方式,通过数据库,还是中间件技术来交互;
4.由ODS数据交互调度程序实现数据上载或是由外围系统自行实现数据下载,从而实现数据的集成。