【ODI】| 数据ETL:从零开始使用Oracle ODI完成数据集成(二)
前一节已经完成了Oracle数据库和ODI的安装,并已经为ODI在Oracle数据库中创建了两个用户,分别用于存放主资料库数据和工作资料库数据,在ODI中完成主资料库和工作资料库的创建,也分别为其创建了登陆用户,最后,登陆到ODI的工作资料库中,在工作资料库中,我们就可以完成数据的集成工作了,下面是一个简单的数据集成工作场景,我们用ODI完成这项工作。
浏览前一节请点此:【ODI】| 数据ETL:从零开始使用Oracle ODI完成数据集成(一)
4. 工作场景说明
工作场景说明:
业务系统A使用SQL Server2012数据库,数据库名称为A_SRC,有表T_USER,JGH为主键,表结构及数据如下:
业务系统B使用Oracle数据库,实例名为orcl,用户名为B_TAG,有表T_EMP,EID为主键,表结构及数据如下:
用ODI将A系统中表T_USER的数据集成到B系统中的表T_EMP中。
在ODI中完成上面的工作需要经过下面的步骤:
创建物理体系结构》》创建逻辑体系结构》》创建模型》》创建项目》》创建接口》》执行接口。
如果我们要接口能够自动定时、定期执行,就还需求创建代理,用代理完成接口的执行,关于代理的使用,后面再另开一节。
5. 创建物理体系结构
(1)创建源系统物理体系结构(系统A,SQL Server2012数据库,数据库名A_SRC)
ODI登陆到工作资料库>>【拓扑】>>【物理体系结构】>>【技术】>>【Microsoft SQL Server】,单击右键选择【新建数据服务器】。
数据服务器【定义】标签配置界面如下图所示:
数据服务器【JDBC】标签配置界面如下图所示,JDBC驱动程序可以点击文本框后面的放大镜选择,JDBC URL自行输入数据库服务器的IP地址以及端口(SQL Server默认为1433)。
配置完成后,点击ODI的【保存】按钮,系统会弹出要求创建一个物理方案,【确定】即可。
下面为源系统创建物理方案,展开【物理体系结构】下面的【Microsoft SQL Server】,即可看到刚创建的【J_WL_SRC】,单击右键选择【新建物理方案】。
源系统物理方案【定义】标签配置界面如下图所示,输入源系统数据库名称及所有者即可。输入完成后点击保存,系统会弹出没有指定上下文的警告对话框,先忽略之。
(2)创建目标系统物理体系结构(系统B,Oracle数据库,实例名orcl,用户名B_TAG)
ODI登陆到工作资料库>>【拓扑】>>【物理体系结构】>>【技术】>>【Oracle】,单击右键选择【新建数据服务器】。
数据服务器【定义】标签配置界面如下图所示:
数据服务器【JDBC】标签配置界面如下图所示,JDBC驱动程序可以点击文本框后面的放大镜选择,JDBC URL自行输入数据库服务器的IP地址以及端口(Oracle默认为1521)及实例名。
配置完成后,点击ODI的【保存】按钮,系统会弹出要求创建一个物理方案,【确定】即可。下面为目标系统创建物理方案,展开【物理体系结构】下面的【Oracle】,即可看到刚创建的【J_WL_TAG】,单击右键选择【新建物理方案】。
目标系统物理方案【定义】标签配置界面如下图所示,输入目标系统Oracle数据库用户名即可。输入完成后点击保存,系统会弹出没有指定上下文的警告对话框,先忽略之。
OK,物理体系结构已经建立完成,最终结果如下图所示:
6. 创建逻辑体系结构
(1)创建源系统逻辑体系结构(系统A,SQL Server2012数据库,物理方案名J_WL_SRC)
【拓扑】>>【逻辑体系结构】>>【技术】>>【Microsoft SQL Server】,单击右键选择【新建逻辑方案】。
逻辑方案【定义】标签配置界面如下图所示,在上下文对应的地方选中刚创建的源系统物理方案。保存即可。
(2)创建目标系统逻辑体系结构(系统B,Oracle数据库,物理方案名J_WL_TAG)
【拓扑】>>【逻辑体系结构】>>【技术】>>【Oracle】,单击右键选择【新建逻辑方案】。
逻辑方案【定义】标签配置界面如下图所示,在上下文对应的地方选中刚创建的目标系统物理方案。保存即可。
7. 创建模型
(1)创建源系统模型(系统A,SQL Server2012数据库,源表T_USER)
【设计器】>>【模型】>>【新模型】
模型【定义】标签配置如下图:
模型【逆向工程】标签可以勾选要进行逆向工程的对象类型。根据实际情况,一般勾选表和视图即可。
通常源系统数据库中的表比较多,可以在【选择性逆向工程】标签中勾选需求中指定的表进行逆向工程。依据之前设定的工作场景,这里我们只勾选表T_USER,然后直接点击左上角的【逆向工程】按钮,会弹出【确认】对话框,点【是】即可。
逆向工程完成后即可在【模型】>>【J_MX_SRC】里看到表T_USER的结构。
(2)创建目标系统模型(系统B,Oracle数据库,目标表T_EMP)
【设计器】>>【模型】>>【新模型】
模型【定义】标签配置如下图:
同源系统逆向工程操作一样,此处【逆向工程】标签勾选表和视图。
同源系统逆向工程操作一样,在【选择性逆向工程】标签中勾选指定表进行逆向工程。依据之前设定的工作场景,这里我们只勾选表T_EMP,然后直接点击左上角的【逆向工程】按钮,会弹出【确认】对话框,点【是】即可。
逆向工程完成后即可在【模型】>>【J_MX_TAG】里看到表T_EMP的结构。
创建项目、接口,执行接口:【ODI】| 数据ETL:从零开始使用Oracle ODI完成数据集成(三)
【ODI】| 数据ETL:从零开始使用Oracle ODI完成数据集成(二)的更多相关文章
- 【ODI】| 数据ETL:从零开始使用Oracle ODI完成数据集成(三)
资料库的创建.体系结构的创建.模型反向工程都已经完成了,下面就是创建以及执行接口来完成工作了. 浏览前两节请点击: [ODI]| 数据ETL:从零开始使用Oracle ODI完成数据集成(一) [OD ...
- 【ODI】| 数据ETL:从零开始使用Oracle ODI完成数据集成(一)
0. 环境说明及软件准备 ODI(Oracle Data Integrator)是Oracle公司提供的一种数据集成工具,能高效地实现批量数据的抽取.转换和加载.ODI可以实现当今大多数的主流关系型数 ...
- 从零开始学习oracle
引用博客:https://blog.csdn.net/qq_36998053/article/details/82725765 )Oracle之<环境配置> (二)Oracle之<基 ...
- 【转】Oracle当中扫描数据的方法
本文将对oracle当中扫描数据的存取方法进行介绍. 1) 全表扫描(Full Table Scans, FTS) 为实现全表扫描,Oracle读取表中所有的行,并检查每一行是否满足语句的WHERE限 ...
- Oracle ODI系列之一(ODI知识模块)
Oracle ODI系列之一(ODI知识模块) ODI简介 ODI(Oracle Data Integrator)前身是Sunopsis Active Integration Platform ...
- 基于ETL技术的数字化校园共享数据中心设计
摘要:数据的抽取.转换与加载(ETL)是数据整合的核心过程.在分析高校信息化建设现状基础上,以建立数字化校园.整合数据资源.实现数据共享为目标,提出以ETL为基础建立共享数据中心实现数据整合的方案.介 ...
- 大数据ETL详解
ETL是BI项目最重要的一个环节,通常情况下ETL会花掉整个项目的1/3的时间,ETL设计的好坏直接关接到BI项目的成败.ETL也是一个长期的过程,只有不断的发现问题并解决问题,才能使ETL运行效率更 ...
- 分享MSSQL、MySql、Oracle的大数据批量导入方法及编程手法细节
1:MSSQL SQL语法篇: BULK INSERT [ database_name . [ schema_name ] . | schema_name . ] [ table_name | vie ...
- 实现从Oracle增量同步数据到GreenPlum
简介: GreenPlum是一个基于PostgreSQL数据库开发的MPP架构的数据库仓库,适用于OLAP系统,支持50PB(1PB=1000TB)级海量数据的存储和处理. 背景: 目前有一个业务是需 ...
随机推荐
- Lintcode400 Maximum Gap solution 题解
[题目描述] Given an unsorted array, find the maximum difference between the successive elements in its s ...
- Python测试远程端口连接时间
问题 最近自己服务器访问别人的服务器,有时候会报超时错误,有时候又能够正常访问别人服务器. 思路 最开始猜测是网络不稳定造成的,但是自己没有收集什么时候超时,什么时候能正常访问别人服务器的日志,搞网络 ...
- python笔记:#013#高级变量类型
高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...
- 13.git的简单使用
安装 https://git-scm.com/downloads 一直点下一步就可以,安装完后打开方法:‘开始菜单’-->'Git'-->''Git Bash 安装完成后设置名字和电子邮件 ...
- invalid bound statement (not found)
invalid bound statement (not found) mybatis 错误: 一般是Mapepr.xml文件中文nameapce没有和mapper接口发生映射,导致mybatis绑定 ...
- 云计算大数据:Xen、KVM、VMware、hyper-v等虚拟化技术的比较
1.Xen.KVM.VMware.hyper-v等虚拟化技术的比较,xen和kvm,是开源免费的虚拟化软件. vmware是付费的虚拟化软件. hyper-v比较特别,是微软windows 2008 ...
- 关于js中循环遍历中顺序执行多个嵌套ajax的问题
就是业务上需要完成一个功能,这个功能需要依次调用四个接口,后面接口的参数都依赖于前一个接口的返回值. 类似这样: var objArr = "从其他逻辑获得"; for(var n ...
- subline常用快捷键
一次创建5个class为main的div : div.main*5 +TAB 快速生成HTML结构: ! + TAB 使盒子内的文本水平垂直方向对齐: height:value; line-h ...
- Manifest文件的最新理解
今天看了Manifest文件内容的相关视频,感觉对知识的理解深刻了一些: 首先,先来说说这个文件的作用,这个文件可以说是聚集了很多个标签,其实对于每个主标签,在将来编译的时候,都会被处理成一个类,而标 ...
- 领域驱动设计和Spring
原文 http://static.olivergierke.de/lectures/ddd-and-spring/ 1.介绍这篇文章是的介绍一下领域驱动设计的基础构件.概念和Java的web应用(主要 ...