ODI Studio拓扑结构的创建与配置(MySQL)
拓扑结构的创建与配置
一、概念解释
Topology Manager主要用来管理下面5类任务,并将信息存储在主资料库中,供所有模块共享使用。

物理体系结构:
定义各种技术及其数据服务器、物理架构、物理代理。数据服务器瞎可以建立多个物理方案,每个物理方案的实质就是schema。
逻辑体系结构:
定义各种技术及其关联的逻辑架构、逻辑代理。一个逻辑方案需要基于一个或几个物理方案,实质上就是一层抽象,是物理方案的别名。
上下文:
上下文的主要目的是实现逻辑方案多物理方案的多对多关系,比如同一逻辑架构在不同上下文情况下可以对应不同的物理方案。
语言:
不同技术所能采用的语言特性。
代理:
代理是一个JAVA 组件组件建,也分为物理代理和逻辑代理两层,通常它需要在目标库上运行(也可以在非目标库上运行),作用是对数据迁移JOB 进行调度,通常,它只是从执行资料库检索代码,并请求数据库服务器、操作系统或脚本引擎执行代码。
资料库:
包含主资料库及其附属的工作资料库。Master Repository,保存企业所有IT资源的Topology,保存项目和数据模型的安全信息、版本信息,供ODI图形模块等使用。通常创建一个即可。Master Repository要尽可能独立存储,单独的Instance,或单独的Schema。Work Repository,保存项目和数据模型,供ODI图形模块等使用。可创建多个。一个Work Repository只能连接一个Master Repository。一个Schema只能存储一个Work Repository,不过Master Repository倒可与其安装在同一Schema。
二、创建物理体系架构
2.1. 创建源数据库和目标数据库
这里分别使用sakila和sakila_dwh作为源数据库和目标数据库。
sakila_dwh 数据仓库样例
创建用户
CREATE USER sakila IDENTIFIED BY 'sakila';
GRANT ALL PRIVILEGES ON sakila.* TO sakila;
CREATE USER sakila_dwh IDENTIFIED BY 'sakila_dwh';
GRANT ALL PRIVILEGES ON sakila_dwh.* TO sakila_dwh;
2.2. 创建数据服务器
Step1:点击拓扑->物理体系结构->选择MySQL->右键选择新建数据库服务器:

Step2:指定数据库服务器的定义:
名称:sakila
数据库服务器:localhost
连接(数据库的用户和密码,该用户的权限应高于或等于数据所在schema的权限)
用户:sakila
口令:sakila

Step3:指定数据库服务器的JDBC:
JDBC驱动程序:com.mysql.jdbc.Driver
JDBC URL:jdbc:mysql://localhost:3306/sakila
保存,点击测试连接测试成功即可。
相同的操作建立数据服务器sakila_dwh
最后效果如图所示

2.3. 创建物理方案
Step1:在新建好的数据服务器sakila上点右键选择新建物理方案:

Step2:创建源数据库的物理方案,方案中均选择刚才在MySQL中代表源数据的sakila,
目录:sakila (表示该物理方案应连接到的源数据schema,也就是源数据在哪里)
工作目录:sakila(这里指定了之后在数据迁移过程中,需要创建的临时表的存放 地点)
稍后再配置上下文,点击全部保存:

同理为目标数据库创建物理方案,方案选择刚才创建的sakila_dwh,点击全部保存
最后的效果如下

2.4. 创建逻辑方案
Step1: 点击拓扑->逻辑体系结构->选择MySQL->右键选择新建逻辑方案:

Step2:创建逻辑方案sakila,这里可以使用ODI 已建好的上下文Global,也可以自己使用下面自己创建的上下文。物理方案对应到刚才创建好的源数据物理方案sakila.sakila,点击全部保存。此时点击物理方案sakila.sakila,会发现上下文自动已经配置上了。这里实际反映了物理方案-上下文-逻辑方案直接的关系,这种设计的目的是为了实现物理与逻辑上的分离。实现一个逻辑方案可以根据开发、生成等不同上下文,关联到不同的物理方案,而同一物理方案也可以支撑多个逻辑方案这种灵活的配置需要。
Step3:同理创建逻辑方案sakila_dwh,物理方案对应到刚才创建好的源数据物理方案sakila_dwh.sakila_dwh,点击全部保存,最终效果如下

三、新建上下文
在系统中已经有了一个上下文Global,我们可以采用此上下文,也可以新建。

填入名称和代码,这里develop表示开发环境,代理先不填,保存效果如下

四、创建代理
代理同样需要创建物理代理和逻辑代理,如果是在本地进行开发,暂时不需要创建代理。
4.1创建物理代理
参照Configuring the Domain for the Java EE Agent

4.2创建逻辑代理
上下文选择刚刚创建的Develop,物理代理方案选择刚才创建的OracleDIAgent

至此,拓扑结构就配置完成了,下面可以新建项目、模型、然后设计接口进行ETL了。
ODI Studio拓扑结构的创建与配置(MySQL)的更多相关文章
- ODI Studio拓扑结构的创建与配置(Oracle)
一.概念解释 Topology Manager主要用来管理下面5类任务,并将信息存储在主资料库中,供所有模块共享使用. 物理体系结构: 定义各种技术及其数据服务器.物理架构.物理代理.数据服务器瞎可以 ...
- ODI 12.1.3创建standalone代理
首先要安装ODI. ODI安装 如果没有安装WLS,则可以选择独立安装,如下图.
- Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查
一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...
- SpringBoot-(8)-配置MySQL数据库链接,配置数据坚挺拦截,创建默认数据表
一,链接mysql数据库 # 数据源基本配置 spring.datasource.username=root spring.datasource.password=123456 spring.data ...
- vs2015配置mysql数据库时,mysql.data、mysql.data.entity、EntityFramework的安装错误问题
vs2015连接mysql数据库常见问题 最近在vs2015用asp.net开发一个网站,要连接mysql数据库,于是百度了一下相关配置的文章,有好几篇文章说了相关步骤,但是我装的时候还是遇到了问题, ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
- Ubuntu安装Wildfly(原JBoss)并为其配置MySQL分布式数据源
注:JBoss在8.0版本后改名为WildFly,以JBoss命名的版本最高为7.1.1.Final,但JBoss7.1.1.Final不支持jdk1.8以上版本,如果在jdk1.8情况下安装JBos ...
- windows下安装并配置mysql
前言:前面三篇文章将django的环境搭建完后,还只能编写静态网页,如果要用到数据库编写动态网页,那么还需要数据库 本章讲解mysql5.6数据库的安装和配置,对于其他版本仅供参考,不一定试用!推荐使 ...
- CentOS 7.2 安装配置mysql主从服务器
MySQL官方压缩包安装: 1:下载mysql官方版本,此处以目前最新版本5.7.14为例,下载的64位版本文件为: mysql-5.7.14-linux-glibc2.5-x86_64.tar 2: ...
随机推荐
- 在自己建立的Thread中设置Handler,并接收消息
这里主要讲的是Android中线程的概念,自己的线程不能更新UI线程中的视图.如果把Handler设置在自己的线程中,那么必须建立一个Looper.至于为什么在Activity中建立Handler就不 ...
- 记录一个简单的vue页面实现
<template> <div class="userView"> <!-- 页眉颜色统一 --> <div class="bu ...
- MySql清空所有表数据【慎用】
CREATE PROCEDURE `up_truncate_all_table`() BEGIN ; ); DECLARE cur1 CURSOR FOR SELECT table_name from ...
- Guava ClassToInstanceMap
概述 ClassToInstanceMap提供了一种是用Class作为Key, 对应实例作为Value的途径.他定义了T getInstance(Class<T>)和T putInstan ...
- Java NIO Pipe
A Java NIO Pipe is a one-way data connection between two threads. A Pipe has a source channel and a ...
- iOS:UICollectionView的扩展应用
一.介绍 CollectionView是iOS中一个非常重要的控件,它可以实现很多的炫酷的效果,例如轮播图.瀑布流.相册浏览等.其实它和TableView很相似,都是对cell进行复用,提高系统性能. ...
- verilog语法实例学习(2)
Verilog中的信号类型 线网类型 线网类型表示一个或多个门或者其它类型的信号源驱动的硬件连线.如果没有驱动源,则线网的默认值为z.verilog中定义的线网类型有以下几种: wire,tr ...
- rapidjson库的基本使用
转自:https://blog.csdn.net/qq849635649/article/details/52678822 我在工作中一直使用的是rapidjson库,这是我在工作中使用该库作的一些整 ...
- [leetcode]Best Time to Buy and Sell Stock III @ Python
原题地址:https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/ 题意: Say you have an array ...
- 读书笔记,《深入理解java虚拟机》,第二章,java内存区域与内存溢出异常
第二节,运行时数据区域. 在这个章节中,作者给出了一个java虚拟机运行时数据区的框图,图的左侧是方法区和堆,这两个数据区是所有的线程所共享的.然后是虚拟机栈.本地方法栈.还有程序计数器,这三个 ...