简单介绍一下ODI的几个基本概念
简单介绍一下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的几个基本概念的更多相关文章
- [原创]关于mybatis中一级缓存和二级缓存的简单介绍
关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
- yii2的权限管理系统RBAC简单介绍
这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...
- angular1.x的简单介绍(二)
首先还是要强调一下DI,DI(Denpendency Injection)伸手获得,主要解决模块间的耦合关系.那么模块是又什么组成的呢?在我看来,模块的最小单位是类,多个类的组合就是模块.关于在根模块 ...
- Linux的简单介绍和常用命令的介绍
Linux的简单介绍和常用命令的介绍 本说明以Ubuntu系统为例 Ubuntu系统的安装自行百度,或者参考http://www.cnblogs.com/CoderJYF/p/6091068.html ...
- iOS-iOS开发简单介绍
概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...
- iOS开发多线程篇—多线程简单介绍
iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...
- iOS开发UI篇—UITabBarController简单介绍
iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavigationController类似,UITabBarControlle ...
随机推荐
- IOS app启动过程
1.main函数 2.UIApplicationMain * 创建UIApplication对象 * 创建UIApplication的delegate对象 3.delegate对象开始处理(监 ...
- C#:让控件TextBox的滚动条保持在最下方
//该事件让TextBox控件的滚动条始终保持在最下方 private void TextBox_TextChanged(object sender, EventArgs e) ...
- Swift 3.0第1步,面向所有开发者开源
在移动开发中,Android开发一直比较受欢迎的原因之一就是其是一个开源的,有很多开源项目.代码可以用,这也是很多iOS开发者羡慕不已的地方.但值得庆贺的是,随着swift编程语言的发展,北京时间12 ...
- 区分IE9/IE8/IE7/IE6及其他浏览器-CSS hack
记录一下这些浏览器的hack如下: 一.IE9以及以下版本浏览器 对于IE8及其以下版本的浏览器,就是使用本文标题所提到的”\9″ hack.如下代码: .ie8_9{ color:blue; /*所 ...
- cookie记录用户的浏览商品的路径
在电子商务的网站中,经常要记录用户的浏览路径,以判断用户到底对哪些商品感兴趣,或者哪些商品之间存在关联. 下面将使用cookie记录用户的浏览过的历史页面.该网站将每个页面的标题保存在该页面的$TIT ...
- Android 初步
Android 四大组件: 1.Activity -------构建应用程序界面 /*2.Intent--------程序之间传输数据*/ 2.BroadcastReciever--------用来接 ...
- USB OTG ID 检测原理
OTG 检测的原理是: USB OTG标准在完全兼容USB2.0标准的基础上,增添了电源管理(节省功耗)功能,它允许设备既可作为主机,也可作为外设操作(两用OTG).USB OTG技术可实现没有主机时 ...
- 分析java中clone()方法 (转载+修改)
Java中的clone() 方法 java所有的类都是从java.lang.Object类继承而来的,而Object类提供下面的方法对对象进行复制. protected native Object c ...
- uva 301 Transportation 铁路公司的阳谋 纯dfs暴力
题目比较难理解. 给出铁路的容量和站点数,以及几笔订单,要求算出如何盈利最大. 咋一看想贪心,但无法确定是最优解啊. 于是用dfs做,就两种状况,选与不选,先开一个每个站点的当前人数数组,假设要选,然 ...
- MVVMLight Toolkit在Windows Phone中的使用扩展之一:在ViewModel中实现导航,并传递参数
MVVMLight是MVVM开发模式在Windows Phone平台下的一个开发框架,关于MVVMLight的基础使用,已经有人写的很好了,可以参照:MVVM.MVVMLight.MVVMLight ...