ODI多库抽取到一个库解决方案II

前面提到,当多库通过ODI抽取到一个库时,通过建立中间用户,在中间用户上建立日志表,将源端日志写入中间用户日志表方式进行数据抽取。发现,实际使用过程中由于通过dblink进行远端写,并且跟系统繁忙程度有关,发现生产库上大量网络等待。为了解决该问题,需要把日志写在本地库中。然而,要解决这个问题,需要为不同库,生成不同临时对象(以解决临时对象冲突问题)。本例以FOLDERS表为例,说明如何对不同库创建不同模型,来生成不同临时对象,以解决临时对象冲突问题。

如上,分别创建了物理体系结构ODI_SRC_80、ODI_SRC_FDD、ODI_TAG_80、ODI_TAG_FDD,前两者对应源,后两者对应目标。对于TAG端的命名规则,我们设置如下

创建逻辑体系结构ODI_SRC_80、ODI_SRC_FDD、ODI_TAG_80、ODI_TAG_FDD

创建模型

创建映射

FOLDERS_80映射

FOLDERS_FDD映射

通过定义不同的物理体系结构,为不同库定义不同的工作表前缀,来解决原单结构下工作表共享问题,实现到多库到单库下的数据抽取。

时间: 2024-10-18 03:04:03

ODI多库抽取到一个库解决方案II的相关文章

ODI多库抽取到一个库操作

需要将LIMS四套系统数据抽取到数据中心,最先方案如下,以REPORTS表为例,如下对应四个模型 分别建立了四个映射与四个包,但是在进行模拟测试时,发现数据抽取有问题 BEGIN UPDATE REPORTS SET FOLDERNO = FOLDERNO ; UPDATE CTI_REL_DATA.REPORTS SET FOLDERNO = FOLDERNO; UPDATE CTI_EDD_DATA.REPORTS SET FOLDERNO = FOLDERNO; UPDATE CTI_FD

How to 解决一个问题,找一个库,评价一个库

一步一步回答完下列的问题,我相信你的答案就呼之欲出了: 准备 -1.定义要解决的这个问题 -2.网上怎么分解这个问题,同行怎么分解这个问题 检索 -1.问题复杂度,项目工期,项目成员的能力,可以把握的资源 -2.开源项目.朋友使用推荐.同行解决方案 需求 -1.使用规模和限制.使用时间 -2.对源代码(需要添加外部库的代码)的熟悉程度,可更改程度 横评外部 -1.口碑:大家都说好不一定好,大家都说不好,那就好不到哪去了 -2.目标清晰:这个库解决问题是否清晰 -3.可靠:库所依赖的工具,语言是否

跨库事务一致性问题的解决方案(例)

我们看一个跨库事务一致性的问题,这是一个简单的场景:有新老两个系统,对应新老两套数据库,新数据库采用分库分表的设计,考虑到项目发布之后可能存在风险,采取了新老系统的并行方案.这个系统的业务比较简单:接收来自外部的数据,然后对数据进行核对处理.为了保证新老系统能够并行,在接收数据的时候必须实现双写方案,从而导致了跨库事务的一致性问题. 下面一幅图展示这一简单的场景 这里面会存在一个小问题,就是可能存在写入老库成功,但是写入新库失败的场景. 我们假设出现这种概率的情况是百万分之一,在系统发布的情况下

组件化开发-001-本地私有库抽取和远程私有库创建

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "Yuanti SC" } 1  组件化:组件化最大目的是为了降低功能.项目与项目组件之间很强的依赖,降低耦合度,抽取时优先抽取基础组件,全局属性,封装的AFN等. 2 组件化优缺点: p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "Yuanti SC" } p.p2 { margin: 0.0px 0

fastText一个库用于词表示的高效学习和句子分类

fastText fastText 是 Facebook 开发的一个用于高效学习单词呈现以及语句分类的开源库. 要求 fastText 使用 C++11 特性,因此需要一个对 C++11 支持良好的编译器,可以使用: (gcc-4.6.3 或者更新版本) 或者 (clang-3.3 或者更新版本) 我们使用 Makefile 进行编译,因此需要 make 工具.为了运行单词相似度演示脚本,我们需要如下工具: python 2.6 or newer numpy & scipy 构建 fastTex

JSTL标签库不起作用的解决方案 .(转)

原文出处:http://blog.csdn.net/cheung1021/article/details/6625703 开始的时候是JDK1.6+JSTL1.2这样的组合,一切都很正常,后来由于服务器上的JDK版本是1.5的,所以后来换成JDK1.5+JSTL1.0这样的组合,换成JSTL1.0后,问题就来了,JSP页面的EL标签直接成字符串便出了,后来经一番周折,总算解决了问题: 1. 修改WEB.XML 版本号为2.4 <web-app   xmlns= "http://java.s

解决git提交敏感信息(回退git版本库到某一个commit)

解决git提交敏感信息(回退git版本库到某一个commit) Fri 07 June 2013 git是一个很好的版本库, 现在很多人用它, 并在github上创建项目, 相信大家都有过将敏感信息提交版本的经历, 如何删除? 好像只有删除版本库来解决, 其实我们可以通过回退版本库删除相应的commit来将提交的敏感信息去掉. 备份本地代码 首先我们将本地代码的更改备份一下, 以防丢失更改 回退本地代码的commit 备份完数据, 我们就可以先回退本地的版本库 git reset --hard

JAVA用标准库自己写一个字符串翻转方法,翻转字符串中字母非单词

例如输入:I love programming 输出:I evol gnimmargorp 算法思路就是:根据空格提取每一个单词,存放在一个buffer里进行翻转处理,再添加到新的字符串.最后新的字符串就完成整个方法过程. public class ReserveString { public String reserve(String sentence){ String backS = new String(); StringBuffer temp = new StringBuffer();

批量删除mysql一个库所有数据表方法

批量删除mysql一个库所有数据表方法 删除表的命令 drop table 表名; 如果有100张表,手工执行100次,想想就崩溃. 下面提供一个使用information_schema库的方案来批量删除数据表:SELECT CONCAT('drop table ',table_name,';') FROM information_schema.`TABLES` WHERE table_schema='数据库名'; 如通过这条命令来得到drop table 表名;这样的语句,然后批量执行.mys