简单介绍一下ODI的几个基本概念

 

ODI的几个基本概念是本文我们主要要介绍的内容,接下来我们就开始介绍这一过程,一起来看看吧!

什么是资料库

ODI资料库可安装在任何支持ANSIISO89的数据库中。资料库分两种:

1、MasterRepository,保存企业所有IT资源的Topology,保存项目和数据模型的安全信息、版本信息,供ODI图形模块等使用。通常创建一个即可。MasterRepository要尽可能独立存储,单独的Instance,或单独的Schema。

2、WorkRepository,保存项目和数据模型,供ODI图形模块等使用。可创建多个。一个WorkRepository只能连接一个 MasterRepository。一个Schema只能存储一个WorkRepository,不过MasterRepository倒可与其安装在同 一Schema。

Oracle实验室已验证通过的数据库有:HypersonicSQL、IBMDB2UDB、IBMDB2/400、Informix、 MicrosoftSQLServer、Oracle、SybaseASAnywhere、SybaseASEnterprise、SybaseASIQ 等。

什么是Topology

TopologyManager主要用来管理下面5类任务,并将信息存储在主资料库中,供所有模块共享使用。

1、物理体系结构,定义各种技术及其数据服务器、物理架构、物理代理。

2、逻辑体系结构,定义各种技术及其关联的逻辑架构、逻辑代理。

3、上下文,用来连接物理架构和逻辑架构。

4、语言,不同技术所能采用的语言特性。

5、资料库,包含主资料库及其附属的工作资料库。

这里重点再看几个概念:

1、技术和数据类型:ODI将不同的数据库(Oracle、DB2等)、文件格式(XMLFile等)、应用系统,用不同的“Technology”来表示。每种技术都有自己支持的“DataType”。

2、数据服务器:在ODI中,每个数据库服务器、JMS消息文件、每组文本文件必须先定义为“DataServer”。

3、物理架构:在数据服务器下,每个用户、JMSTopic、文本文件必须定义为一个“PhysicalSchema”。

4、物理代理:在物理体系结构需要定义“PhysicalAgent”,允许在远程机器上执行ODI任务。

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

什么是知识模块

OracleDataIntegrator之所以能适应不同的、多种多样的数据源,灵活有效的完成数据抽取/转换/载入的过程,均是基于其知识模型 体系。KnowledgeModules类似于程序中的插件,OracleDataIntegrator将数据整合的任务抽象出六个组成部分:

1、反向工程RKM,Reverse-engineeringknowledgemodules,用于从数据源读取表及其他对象。

2、日记JKN,Journalizingknowledgemodules,用于为单一或一组表/视图记录新建的和修改的数据。ODI支持部分数据源的ChangeDataCapture(CDC)功能,前提为ODI项目中启用该模块。

3、加载LKM,Loadingknowledgemodules,用于从数据源抽取数据。

4、检查CKM,Checkknowledgemodules,用于检测抽取出的源数据的合法性。

5、集成IKM,Integrationknowledgemodules,用于将StagingArea中的数据转换至目标表,基于目标数据库产生对应的转换SQL。

6、服务SKM,Serviceknowledgemodules,提供将数据以WebServices的方式展现的功能。

ODI逻辑架构:

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

ODI物理架构:

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

ODI上下文:

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

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

关于ODI的几个基本概念的相关知识就介绍到这里了,希望本次的介绍能够对您有所收获!

简单介绍一下ODI的几个基本概念的更多相关文章

  1. [原创]关于mybatis中一级缓存和二级缓存的简单介绍

    关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...

  2. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  3. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  4. yii2的权限管理系统RBAC简单介绍

    这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...

  5. angular1.x的简单介绍(二)

    首先还是要强调一下DI,DI(Denpendency Injection)伸手获得,主要解决模块间的耦合关系.那么模块是又什么组成的呢?在我看来,模块的最小单位是类,多个类的组合就是模块.关于在根模块 ...

  6. Linux的简单介绍和常用命令的介绍

    Linux的简单介绍和常用命令的介绍 本说明以Ubuntu系统为例 Ubuntu系统的安装自行百度,或者参考http://www.cnblogs.com/CoderJYF/p/6091068.html ...

  7. iOS-iOS开发简单介绍

    概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...

  8. iOS开发多线程篇—多线程简单介绍

    iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...

  9. iOS开发UI篇—UITabBarController简单介绍

    iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavigationController类似,UITabBarControlle ...

随机推荐

  1. js基础——属性操作

    html属性:属性名——属性值 操作:读 . 写 读操作:用来获取.找到属性名对应的属性值,方法:元素.属性名 例如:var oBtn = document.getElementById('btn1' ...

  2. 移动并改变alpha

    <script type="text/javascript">function obj(x){return document.getElementById(x);}va ...

  3. google base库中的WaitableEvent

    这个类说白了就是对windows event的封装,没有什么特别的,常规做法,等侍另一线程无非就是等侍事件置信waitsingleobject,通知事件无非就是setevent,一看就明白,不就详解, ...

  4. poj1487

    题目大意: 给一棵递归树,看链接图片,从根节点开始对于每个节点往它的子节点移动,直到叶子节点停止.每个节点选哪一个孩子节点继续往下走是随机的(等概率).然后叶子节点都会标记一个数值,记为走到该节点的得 ...

  5. shell基础认识

    Shell 我们在终端下写命令Linux内核是看不懂的必须通过shell解释成内核可执行的代码 这就是shell(其实解释命令这只是它的一个功能模块,shell还可以用来进行程序设计) 有点类似win ...

  6. less的学习(css)

    因为新公司需要用less来写样式,对于用惯了css的我来说还是觉得有点麻烦 但是呢,都是有个过程嘛,学习必须走起嘛. 写到半中央发现一个写的特别好的less帖子,就不写. http://www.w3c ...

  7. Nginx修改配置实现图片防盗链

    一般情况下,防盗链是针对软件下载和图片的,由于一般的站点不提供资源下载,所以本文主要是针对图片的防盗链 1.如果对全站图片做防盗链,至少需要一个另外的域名存放指向图片.因为如果对全站图片做了防盗链,包 ...

  8. Traveling

    Problem J: Traveling Time Limit: 1 Sec  Memory Limit: 32 MB Description SH likes traveling around th ...

  9. J2SE知识点摘记(二十三)

    我们简单介绍一下这个接口: 1.4.3        Comparable 接口 在 java.lang 包中,Comparable 接口适用于一个类有自然顺序的时候.假定对象集合是同一类型,该接口允 ...

  10. 无线功率 mW 和 dBm 的换算

    无线电发射机输出的射频信号,通过馈线(电缆)输送到天线,由天线以电磁波形式辐射出去.电磁波到达接收地点后,由天线接收下来(仅仅接收很小很小一部分功率),并通过馈线送到无线电接收机.因此在无线网络的工程 ...