Oracle Data Integrator 12c-模型(Model)和 数据存储(DataStore)
一、概念
Model模型:
描述关系型数据的模型. 是一组存放在特定的技术(如Oracle)的数据存储的集合。例如当技术为Oracle时,对应于数据库的Scheme
DataStore: 数据存储
一个模型中包含的元数据,对应于模型所在scheme中的表或视图。可以通过反向工程(reverse-engineered) 从真实的环境导入, 也可以在ODI 中创建
二、支持的操作
测试表格
DROP TABLE DEPT; CREATE TABLE DEPT (
DEPTNO NUMBER (2) CONSTRAINT PK_DEPT PRIMARY KEY,
DNAME VARCHAR2 (14),
LOC VARCHAR2 (13)
); DROP TABLE EMP; CREATE TABLE EMP (
EMPNO NUMBER (4) CONSTRAINT PK_EMP PRIMARY KEY,
ENAME VARCHAR2 (10),
JOB VARCHAR2 (9),
MGR NUMBER (4),
HIREDATE DATE,
SAL NUMBER (7, 2),
COMM NUMBER (7, 2),
DEPTNO NUMBER (2) CONSTRAINT FK_DEPTNO REFERENCES DEPT
);
插入数据
INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK');
INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');
INSERT INTO DEPT VALUES (30,'SALES','CHICAGO');
INSERT INTO DEPT VALUES (40,'OPERATIONS','BOSTON');
INSERT INTO EMP VALUES(7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-yyyy'),800,NULL,20);
INSERT INTO EMP VALUES(7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-yyyy'),1600,300,30);
INSERT INTO EMP VALUES(7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-yyyy'),1250,500,30);
INSERT INTO EMP VALUES(7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-yyyy'),2975,NULL,20);
INSERT INTO EMP VALUES(7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-yyyy'),1250,1400,30);
INSERT INTO EMP VALUES(7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-yyyy'),2850,NULL,30);
INSERT INTO EMP VALUES(7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-yyyy'),2450,NULL,10);
INSERT INTO EMP VALUES(7788,'SCOTT','ANALYST',7566,to_date('13-JUL-87')-85,3000,NULL,20);
INSERT INTO EMP VALUES(7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-yyyy'),5000,NULL,10);
INSERT INTO EMP VALUES(7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-yyyy'),1500,0,30);
INSERT INTO EMP VALUES(7876,'ADAMS','CLERK',7788,to_date('13-JUL-87')-51,1100,NULL,20);
INSERT INTO EMP VALUES(7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-yyyy'),950,NULL,30);
INSERT INTO EMP VALUES(7902,'FORD','ANALYST',7566,to_date('3-12-1981','dd-mm-yyyy'),3000,NULL,20);
INSERT INTO EMP VALUES(7934,'MILLER','CLERK',7782,to_date('23-1-1982','dd-mm-yyyy'),1300,NULL,10);
2.1 创建模型并逆向工程
设计器->模型->新模型图标,

在模型对话框的“定义”标签下,输入名称ODI_SRC,选择技术Oracle和逻辑方案ODI_SRC
在“逆向工程”标签下,选择上下文,如果没创建上下文就是Global,选择“要进行反向工程的对象类型”如“表、视图”等,此处只选择了表,保存。
右键模型->逆向工程 对逻辑方案对应的物理方案下的所有的表进行逆向工程。

也可以在“选择性逆向工程” 勾选”选择性逆向工程”和要进行逆向工程的表,点击逆向工程,只针对选择的表进行逆向工程。

逆向工程中

逆向工程完成后,会在Designer的模型框中看到建立好的模型:

同理,新建模型ODI_TAG并进行逆向工程

2.2 模型的导入导出
右键模型,导出,


会生成一个MOD_ODI_SRC.xml文件,可以用于导入
2.3 查看Datastore(数据存储)数据
右键模型,查看数据


2.4 新建数据存储并同步到数据库
Step1 右键模型,新建数据存储

Step2 输入表名

Step3 添加属性
Step4 添加关键字、index等




Step5 生成DDL,会在你指定的路径下生成一个过程


Step6 执行过程就可以同步到数据库

数据库多了一张表

2.5 生成服务
2.6 已更改数据捕获
Oracle Data Integrator 12c-模型(Model)和 数据存储(DataStore)的更多相关文章
- Oracle Data Integrator 12c 安装(ODI安装)
Oracle Data Integrator 12c 安装(ODI安装) 企业版安装步骤(包含独立安装步骤) 官网下载Oracle Data Integrator 12cR2 (12.2.1.0.0) ...
- Oracle Data Integrator 12c (12.1.2)新特性
改进特性如下: 基于流程界面的声明式设计 在12c中,以前的接口(interface)已经改为映射(mapping),新的基于流程声明的设计方式更灵活,也更容易使用.在12c中,映射的实现是通过使用J ...
- Manipulating Data from Oracle Object Storage to ADW with Oracle Data Integrator (ODI)
0. Introduction and Prerequisites This article presents an overview on how to use Oracle Data Integr ...
- Oracle Data Integrator 12c----一致性 CDC(Consistent CDC)
一致性 CDC 中引入了变化集的概念.一个变化集中可以包括多个相互存在关联关系(如主外键引用关系)的表.CDC 在捕获和发布一个变化集中的变化时能够保证数据的一致性.这个练习介绍如何使用能够保证一致性 ...
- Oracle Data Integrator 12c----简单CDC(Simple CDC)
Simple CDC最简单的一种 CDC.在这里,每一张 CDC 的表的变化都是独立捕获的,不需要考虑多张存在主外键引用关系的表之间的数据一致性. 1 环境准备 源表:ODI_SRC.DEPT 目标表 ...
- Oracle Data Integrator与OWB的集成及迁移
v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...
- Oracle Goldengate和Oracle Data Integrator的初步认识
免责声明: 本文中使用的部分图片来自于网络,如有侵权,请联系博主进行删除 1. Oracle Glodengate是什么? GoldenGate是oracle的一种基于数据库日志的数据同步软件 ...
- Oracle Data Integrator 12cR1 (12.1.3.0.0)安装过程
Oracle Data Integrator 12cR1 (12.1.3.0.0)安装过程 下载安装文件 Oracle Data Integrator 12cR1 (12.1.3.0.0) http: ...
- Thinkphp5.0 的使用模型Model添加数据
Thinkphp5.0 的使用模型Model添加数据 使用create()方法添加数据 $res = TestUser::create([ 'name' => 'zhao liu', 'pass ...
随机推荐
- C# byte[]和文件FileStream相互转化
, pReadByte.Length); } catch { return false; ...
- JS读取json 文件
json文件是一种轻量级的数据交互格式.一般在jquery中使用getJSON()方法读取. $.getJSON(url,[data],[callback]) url:加载的页面地址 data: 可选 ...
- remote: GitLab: You are not allowed to push code to protected branches on this project.
"C:\Program Files\Git\bin\git.exe" push --recurse-submodules=check --progress "origin ...
- SEM(搜索引擎营销)
ylbtech-Miscellaneos:SEM(搜索引擎营销) 搜索引擎营销:英文Search Engine Marketing ,我们通常简称为“SEM”.就是根据用户使用搜索引擎的方式利用用户检 ...
- C#如何使用SplitContainer控件实现上下分隔
C#如何使用SplitContainer控件实现上下分隔 Orientation 属性设置为Horizontal 完美世界 http://www.23cat.com/Contents_51864.ht ...
- 为什么你作为一个.NET的程序员工资那么低?(转)
最近看到很多抱怨贴,也许有一定的道理,但是你想过没,为什么大部分.NET程序员工资相对低?我个人是这么看的: 大批半罐子水的程序员,永远被局限在.NET的原始的小圈圈里.前端不会(你放弃了一项很重要的 ...
- [leetcode]Gas Station @ Python
原题地址:https://oj.leetcode.com/problems/gas-station/ 题意: There are N gas stations along a circular rou ...
- Logistic Regression总结
转自:http://blog.csdn.net/dongtingzhizi/article/details/15962797 Logistic回归总结 作者:洞庭之子 微博:洞庭之子-Bing (20 ...
- 用jstl标签判断一个字符串是否包含了另一个字符串
<c:if test="${fn:contains(str1,str2)}">
- Nginx如何启用ETag,提高访问速度
ETag全称EntityTags,HTTP协议规格说明中定义“ETag”为“被请求变量的实体值”. 我们也可以把ETag理解为是一个客户端与服务器关联的记号.这个记号告诉客户端,当前网页在上次请求之后 ...