一. 应用场景
任何数据驱动的集成,都可以使用ODI,应用场景包括但不限于:
1、数据仓库:比如ETL阶段。ODI+BIEE是非常好的搭配。
2、数据迁移:比如将某一源系统的数据迁移到新系统中。
3、数据集成:比如两个系统间高效的点到点数据传递。
4、数据复制:比如将一个Instance的数据复制另外一个Instance中。
5、SOA应用
6、MDM应用
二. OverviewOracle Data Integrator由以下基于Java的、可分开部署的组件构成
1、Repository,资料库,分Master Repository和Work Repositories,可安装在RDBMS中。
2、 Graphical Modules,包括4个设计工具,我们主要用这4个工具工作。
Designer用于定义Data Store、Interface(数据映射)、Package(类似Workflow)。
Operator用于管理和监控数据转换任务的执行情况,也可用于调试。
Topology Manager用于定义物理架构、逻辑架构。
Security Manager用于管理用户权限。
3、Schedule Agent,属于Runtime组件,因为ODI采用E-LT架构,所以Schedule Agent只用来调度执行ELT任务,其数据转换引擎很少用到。
4、Metadata Navigator,基于Servlet和JSP的访问资料库的Web接口。
5、Lightweight Designer,用于通过浏览器查看和编辑Repository。
6、Public Web Services,用于SOA环境,可通过WS来访问ODI。
后3个需要单独安装,需要Web服务器如Tomcat或OC4J。
此外,还集成了Oracle Data Profiling、Oracle Data Quality。
三. 技术架构四. 什么是资料库ODI资料库可安装在任何支持ANSI ISO 89的数据库中。资料库分两种:
1、Master Repository,保存企业所有IT资源的Topology,保存项目和数据模型的安全信息、版本信息,供ODI图形模块等使用。通常创建一个即可。Master Repository要尽可能独立存储,单独的Instance,或单独的Schema。
2、Work Repository,保存项目和数据模型,供ODI图形模块等使用。可创建多个。一个Work Repository只能连接一个Master Repository。一个Schema只能存储一个Work Repository,不过Master Repository倒可与其安装在同一Schema。
Oracle实验室已验证通过的数据库有:Hypersonic SQL、IBM DB2 UDB、IBM DB2/400、Informix、Microsoft SQL Server、Oracle、Sybase AS Anywhere、Sybase AS Enterprise、Sybase ASIQ等。
五. 什么是TopologyTopology Manager主要用来管理下面5类任务,并将信息存储在主资料库中,供所有模块共享使用。
1、物理体系结构,定义各种技术及其数据服务器、物理架构、物理代理。
2、逻辑体系结构,定义各种技术及其关联的逻辑架构、逻辑代理。
3、上下文,用来连接物理架构和逻辑架构。
4、语言,不同技术所能采用的语言特性。
5、资料库,包含主资料库及其附属的工作资料库。
这里重点再看几个概念:
1、技术和数据类型:ODI将不同的数据库(Oracle、DB2等)、文件格式(XML File等)、应用系统,用不同的“Technology”来表示。每种技术都有自己支持的“Data Type”。
2、数据服务器:在ODI中,每个数据库服务器、JMS消息文件、每组文本文件必须先定义为“Data Server”。
3、物理架构:在数据服务器下,每个用户、JMS Topic、文本文件必须定义为一个“Physical Schema”。
4、物理代理:在物理体系结构需要定义“Physical Agent”,允许在远程机器上执行ODI任务。
逻辑架构、逻辑代理是物理架构、物理代理的逻辑组合,方便用户管理和使用。
六. 什么是知识模块(KM)Oracle Data Integrator之所以能适应不同的、多种多样的数据源,灵活有效的完成数据抽取 /转换 /载入的过程,均是基于其知识模型体系。 Knowledge Modules类似于程序中的插件, Oracle Data Integrator将数据整合的任务抽象出六个组成部分:
1、 反向工程 RKM, Reverse-engineering knowledge modules,用���从数据源读取表及其他对象。
2、 日记 JKN, Journalizing knowledge modules,用于为单一或一组表 /视图记录新建的和修改的数据。 ODI支持部分数据源的 Change Data Capture(CDC)功能,前提为 ODI项目中启用该模块。
3、 加载 LKM, Loading knowledge modules,用于从数据源抽取数据。
4、 检查 CKM, Check knowledge modules,用于检测抽取出的源数据的合法性。
5、 集成 IKM, Integration knowledge modules,用于将 Staging Area中的数据转换至目标表,基于目标数据库产生对应的转换 SQL。
6、服务SKM,Service knowledge modules,提供将数据以Web Services的方式展现的功能