zoukankan      html  css  js  c++  java
  • 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
    );
    View Code

    插入数据

    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);
    View Code

    2.1 创建模型并逆向工程

    设计器->模型->新模型图标,

    clip_image001

    在模型对话框的“定义”标签下,输入名称ODI_SRC,选择技术Oracle和逻辑方案ODI_SRC

    在“逆向工程”标签下,选择上下文,如果没创建上下文就是Global,选择“要进行反向工程的对象类型”如“表、视图”等,此处只选择了表,保存。

    右键模型->逆向工程 对逻辑方案对应的物理方案下的所有的表进行逆向工程。

    clip_image002

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

    clip_image003

    逆向工程中

    clip_image004

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

    clip_image005

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

    clip_image006

    2.2 模型的导入导出

    右键模型,导出,

    clip_image007

    clip_image008

    会生成一个MOD_ODI_SRC.xml文件,可以用于导入

    2.3 查看Datastore(数据存储)数据

    右键模型,查看数据

    clip_image009

    clip_image010

    2.4 新建数据存储并同步到数据库

    Step1 右键模型,新建数据存储

    clip_image011

    Step2 输入表名

    clip_image012

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

    clip_image014

    clip_image015clip_image016

    clip_image017

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

    clip_image018

    clip_image019

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

    clip_image020

    数据库多了一张表

    clip_image021

    2.5 生成服务

    2.6 已更改数据捕获

  • 相关阅读:
    leetcode题库
    递归的存储以及执行顺序
    linux与开发板串口通信
    opencv基础到进阶(2)
    opencv基础到进阶(1)
    js的搜索遍历精讲
    js闭包深度讲解
    js使用for in遍历时的细节问题
    分分钟解决正则表达式
    css3中的新特性经典应用
  • 原文地址:https://www.cnblogs.com/xqzt/p/4504618.html
Copyright © 2011-2022 走看看