资源描述
ODI工具抽取数据操作手册
一、准备工作(以ORACLE 11G为例)
1、ODI是oracle数据抽取工具,需要自行安装oralce数据库。
2、请根据ODI安装说明书安装rcu资料库和ODI工具。
ODI11G安装及使用_baidu文库:
3、了解:资料档案库
资料库分两种:
(1)Master Repository(主资料库),保留企业全部IT资源Topology,保留项目和数据模型安全信息、版本信息,供ODI图形模块等使用。通常创建一个即可。Master Repository要尽可能独立存放,单独Instance,或单独Schema。
(2) Work Repository(工作资料库),保留项目和数据模型,供ODI图形模块等使用。可创建多个。一个Work Repository只能连接一个Master Repository。一个Schema只能存放一个Work Repository,不过Master Repository倒可和其安装在同一Schema。
4、Topology
Topology Manager(拓扑管理器)关键用来管理下面5类任务,并将信息存放在主资料库中,供全部模块共享使用。
(1)物理体系结构,定义多种技术及其数据服务器、物理架构、物理代理。
(2)逻辑体系结构,定义多种技术及其关联逻辑架构、逻辑代理。
(3)上下文,用来连接物理架构和逻辑架构。
(4)语言,不一样技术所能采取语言特征。
(5)资料库,包含主资料库及其隶属工作资料库。
5、知识模块
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方法展现功效。
6、源系统
需要知道源系统数据库用户密码和源系统IP地址或主机名、数据库端口、数据库实例。(以223这台机为例)。
数据库链路:jdbc:oracle:thin:@ 172.17.7.223:1521:gbk
数据库用户/密码:rcms/123456
数据:EMP(表)
7、创建目标系统用户(以 50这台机为例)。
数据库链路:jdbc:oracle:thin:@ 172.17.7.50:1521:orcl
数据库用户/密码:spaq_odi/spaq_odi
而且需要在目标用户上创建源用户表或视图,表结构需要和源用户表结构一致。
create user spaq_odi identified by spaq_odi default tablespace users;
grant connect,resource to spaq_odi;
grant create database link to spaq_odi;
grant create synonym to spaq_odi;
create table EMP
(
EMPNO NUMBER(4) not null,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2)
);
二、创建主资料库
1、新建主资料库用户(以zzl(主资料缩写)用户为例):
create user zzl identified by zzl default tablespace users;
grant connect, resource to zzl;
2、点击创建新主资料档案库,填写资料档案库连接资料,JDBC URL原本为jdbc:oracle:thin:@<host>:<port>:<sid>,需要手动修改。
填写完资料后,可经过测试连按钮接测试配置是否正确。以下图1-2
图1
图2
三、创建资料档案库连接
1、点击创建新ODI资料档案库登陆,填写资料档案库连接信息,经过“测试连接”可测试配置是否正确。
图1
四、创建工作资料库
1、新建工作资料库数据库用户(以gzzl(工作资料缩写)为例):
create user gzzl identified by gzzl default tablespace users;
grant connect, resource to gzzl;
2、点击连接到资料档案库 → 拓扑 → 资料档案库 → 右键工作资料档案库 → 新建工作资料档案库 以下图1-3
图1
图2
图3
3、新建完后会自动提醒是否为该工作资料创建登录名,可选择帮该工作资料档案库创建登陆名。
也可连接主资料库时候,点击编辑按钮“食品安全综合监管项目”连接在工作资料档案库项勾上工作资料档案库而且点击放大镜 添加WORKREP1。操作图4-5
图4
图5
五、创建物理体系结构
1、创建目标系统物理体系结构(以ODI_MUBIAO为例)
拓扑 → 物理体系结构 → 技术 → oracle → 右键oracle → 新建数据服务器 图1:
图1
2、定义名称、实例/dblink(数据服务器)、连接用户及口令:
注1:在“Oracle to Oracle”模式时,“实例/dblink”将用于ODI自动创建两个系统间dblink,为了使dblink创建成功,需要在目标数据库端配置TNSNAME(=这里“实例/DBLINK”);另外假如起源和目标是同一个数据库,那么dblink就是LOOPBACK,这里“实例/dblink”名字就不能等于SID。故这里有意加了“.LOOPBACK”。
注2:连接用户和口令为目标数据库用户和口令spaq_odi/spaq_odi 。
3、JDBC驱动程序、JDBC URL:
4、保留后新建目标物理方案
点击ODI_MUBIAO → 右键 → 新建物理方案
5、定义方案(方案)、方案(工作方案):
保留后报没有选择上下文警告,先忽略之。
6、创建源系统物理体系结构和源物理方案(以ODI_YUAN为例)
图1-3
图1
图2
图3
注:连接用户和口令为目标数据库用户和口令rcms/123456。
最终止果以下图:
六、创建逻辑体系结构
1、创建目标系统逻辑体系结构(以ODI_MUBIAO为例)
拓扑 → 逻辑体系结构 → 技术 → oracle → 右键oracle → 新建逻辑方案 图1-2:
图1
图2
2、创建源系统逻辑体系结构(以ODI_YUAN为例)
七、创建项目
1、设计器 → 项目 → 点击 → 新建项目 (以shipin项目为例)
以下图1-2:
图1
图2
2、导入知识模块
设计器 → 项目 → shipin → 右键知识模块 →导入知识模块
图1-2
图1
图2
温馨提醒:点击即可全选知识模块,也能够逐一选择需要知识模块,为简单起见,全选后确定。不过全部导入比较耗时和占空间,看下面滚动条和右下脚空间占用就知道了。
八、创建模型
1、创建目标系统模型(以ODI_MUBIAO为例)
设计器 → 模型 → 点击 → 新模型
按下图内容输入定义名称、技术、逻辑方案
2、创建源系统模型(以ODI_YUAN为例)
3、逆向工程
把目标系统(spaq_odi用户)下表全部反向工程到我们目标模型内。
逆向工程页签 → 上下文选择Global → 点击 按钮
4、创建源系统模型(以ODI_YUAN为例)
跟目标模块一致,逆向工程把源系统(rcms用户)下表全部反向工程到我们源模块内。
5、创建目标模块ODI_MUBIAO 主键:
设计器 → 模型 → ODI_MUBIAO → EMP → 右键约束条件 → 新建关键字
名称:PK_EMPNO_1 、关键字或索引类型:主键 、列:EMPNO
图1
图2
注:目标模型表必需添加主键,不然抽取数据时候会犯错。
九、创建接口
1、设计器 → 项目 → shipin → 第一个文件夹 → 右键接口 → 新建接口
2、输入接口名称
3、映射目标模块和源模块表。
点击“映射”标签页 → 将ODI_MUBIAO内EMP 拖至目标数据库存放区域 → 将ODI_YUAN内EMP拖至 源默认值区域 → 提醒是否实施自动映射,选择是即可。
4、切换到“流”标签页。
选中SrcSet0,LKM已默认采取LKM Oracle to Oracle (DBLINK),我们需要把下面AUTO_CREATE_DB_LINK改为 真。
注:假如我们已经在数据库中手工创建了DBLINK,而且名字和定义“数据服务器”时定义一样,这里就保持默认值否。选中“目标+临时区域”,能够看到下面已经默认使用了IKM Oracle Incremental Update
5、切换到“控制”标签页。
CKM选择器选上:CKM Oracle ,保留接口。
十、实施接口
1、设计器 → 项目 → shipin →接口 → 右键POP.EMP → 实施
我们不使用代理,保持上面选项点击“确定”,将会开启ELT会话。
2、检验是否实施成功
操作 → 会话列表 → 全部实施
3、查看数据
设计器 → 模型 → ODI_MUBIAO → 右键EMP → 查看数据
到这里假如有数据话,证实已经成功将ODI_MUBIAO 内EMP表数据导进ODI_YUAN内EMP表里面了。
十一、问题诊疗
假如出现问题,Operator也提供了比很好调式方法:
以下图:
1、由上图能够看到该实施到第9步犯错了,能够双击该步奏打开会话任务窗口查看错误信息。
2、点击“代码”标签页能够查看实施哪些条语句出现该错误信息。
3、对于犯错会话,能够重新实施,而且,能够先修改“目标代码”标签页内容,加入调式信息
十二、ODI 工具12C 创建代理
参考该网站:
12C 版本中,ODI代理共分为三种:
completely standalone agent
standalone collocated agent
JEE agent
12C版本在安装Server时候,有两个选项,独立安装和企业安装。本文将描述企业安装情况下代理安装(standalone collocated agent )。
首先,进入目录 <Oracle_Home>\oracle_common\common\bin,运行congfig.cmd,打开配置程序。
这里选择创建新域,域名称可自行调整
接下来选择域创建模板,勾选 odi collocated standalone agent选项,注意,下方两项会自动勾选上,不要做任何调整!
输入weblogic管理员账号和密码
这里我勾选是开发模式,这么就不用每次开启weblogic时候输入账号和密码了。假如系统java环境需要调整,能够自行输入jdk路径。
接下来输入RCU方案,方案前缀名改为你在创建RCU时候所使用前缀。配置完成后,点击获取RCU配置
这里不需要做调整,直接选择下一步
这里需要数据库链接测试全部经过
这里只选择系统组件。(其它多个选项配置过程,在下一篇文章里面会具体讲解)
这里出现代理OracleDIAgent1,就是我们需要代理程序组件(注意,新增代理组件时候,组件类型不要选错)
这里填写代理serverIP地址端口号等相关信息。
配置服务器信息
接下去,根据程序提醒,一直选择下一步,直至实施完成即可
配置完成后,我们打开ODI Studio界面,为刚才创建代理,配置物理代理
编辑代理页面,输入代理名称。注意,这里物理代理名称必需和之前创建代理名称相同,同时地址和端口号也需要保持一致。
接下来为物理代理配置逻辑代理,以下图
至此,全部配置工作已经,全部完成,接下来我们来开启这个代理
进入先前创建domain目录下,打开bin文件夹能够看到agent.cmd文件,我们来运行它
能够看到,命令行提醒代理程序已经开启,那么我们进入ODI studio测试一下代理看看
能够看到测试成功,说明之前配置全部已经生效了。至此,ODI 12C Collocated Standalone Agent完全配置成功了。
十三、创建ODI控制台
1、进入ODI安装目录,运行config.cmd 文件
2、odi_domain 为域名字能够依据自己需求更改。
如你已新建ODI域话, 能够选择更新现有域,选择对应域,即可编辑域,这里我选择创建新域。
3、选上Oracle Enterprise Manager Plugin for ODI – 12.1.3.0
和 Oracle Data Integrator – Standalone Collocated Agent – 12.1.3.0
(1)Oracle Enterprise Manager Plugin for ODI – 12.1.3.0
这个模板为:web控制台所需要模板。
(2)Oracle Data Integrator – Standalone Collocated Agent – 12.1.3.0
这个模板为:创建代理时需要用到模板。
4、新建域相关位置资料。直接下一步。
5、填入域用户和密码
6、域模式和JDK选择默认即可。直接下一步
7、
展开阅读全文