ODI 基础

1.1.1. 什么是资料库

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等。

1.1.2. 什么是Topology

Topology 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任务。

5、  逻辑架构、逻辑代理是物理架构、物理代理的逻辑组合,方便用户管理和使用。

1.1.3. 什么是知识模块

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的方式展现的功能。

 


ODI

逻辑架构:

一个物理模式(physical schema)由一个owner schema和一个work schema组成,work schema主要用于一些临时表等对象,考虑单独创建用户维护这个对象.

物理架构:

一个逻辑模式(logical schema)是物理模式的别名,防止用户更改数据库服务器IP地址,用户名,数据库服务器密码等信息.可以理解为同义词,避免用户在使用过程中加入数据库dblink.物理模式的修改,不影响逻辑模式.


上下文:

物理模式信息的修改不影响逻辑模式的引用,但如果物理模式数据库服务器的连接信息改变,就比较麻烦.上下文的出现就是允许逻辑模式通过上下文连接多个物理模式,避免因为连接信息改变而重新定义.
当然,上下文是匹配所有物理模式的.


ODI在设计开发阶段是通过引用逻辑模式完成的.在执行阶段,通过上下文找到相应的物理模式,然后执行转换.如果需要在上下文中执行一个对象,必须在上下文中匹配逻辑模式.在上下文中,几乎一个逻辑模式匹配一个物理模式.

转自:http://blog.csdn.net/zftang/article/details/6706165 


ODI:Oracle data integrator  

oracle的数据加载工具。  oracle ODI和OWB一样,都是使用E-LT的理念设计出来的数据抽取/数据转换工具。  

ODI最大的特点是特征是提出了知识模块的概念(Knowledge Module)。  

ODI把一些场景(如把文件载到数据库,从Mysql数据库抓取数据放到Oracle数据库里,从DB2把数据抓取出来放在Oracle数据库里等)的详细的实现步骤作为一个一个的知识模块并使用Jython脚本语言结合数据库的SQL语句录制成一步一步的步骤忠实地记录下来,这样就形成了ODI里的100多个知识模块,基本上包含了所有普通应用所涉及到的所有场景。更方便的是,用户既可以直接使用ODI的知识模块完成数据的获取工作,也可以直接在知识模块上面做各种定制,比如某一个业务场景可能并不需要知识模块里的某一个特定的步骤,那就可以直接把该步骤删除掉从而提供更好的性能。当然用户也可以完全自己来开发这些知识模块。  

ODI知识模块(Knowledge Module)的分类  

ODI的知识模块主要分为几个大类(RKM,CKM,LKM,IKM,SKM),其中最重要的是LKM(load KM)和IKM(Integration KM)RKM:  

RKM完成从源系统和目标系统的数据结构的反向工程来形成数据模型的功能。  

CKM:CKM完成数据质量检查。  

JKM:日志记录知识模块,记录单个表或视图等中的新数据和更新的数据。  

LKM:LKM完成从源数据库数据加载到临时表。  

IKM:IKM完成从临时表的数据加载到目标表。  

SKM:SKM完成ODI和WEB服务接口的功能。  

SKM(Service KM):Web服务知识模块,可以使用该知识模块来生成Web服务调用。

ODI其他特点:  

1,支持异构数据:当数据源或者目的不是Oracle数据库,ODI能够生成针对那个数据源的native的SQL操纵语句。  

2,实时数据集成的环境:ODI能够检测事件,一个事件可以触发ODI的一个接口流程。从而完成近实时的数据集成。  

3,在数据抽取集成过程中可以和SOA集成,ODI本身提供了call web service的机制,并且ODI的接口也可以暴露为webService,从而可以和SOA环境进行交互。  

4,支持一致的CDC(Change Data Capture),不同的数据源(Oracle,DB2等)对于变化数据获取都提供了不一样的技术框架,ODI把这些不同的技术框架屏蔽了,以一个统一的接口方式提供统一的CDC的设置框架,并提供订阅者的功能。

转载于:https://my.oschina.net/aiguozhe/blog/117576

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值