使用ODI进行数据整合过程中的数据源、目标与临时区域(staging area)的分布情况与执行方式

数据源、目标、临时区域在相同的服务器

流图、执行计划和临时区域(ODI flow diagram)  - trailblizer - CRAZY BOY

IKM为上图中的join 、filter、转换生成合适的sql产生结果数据流。效率最高,数据不用在不同的服务器之间传送。

 

 

目标和临时区域在同一个服务器

流图、执行计划和临时区域(ODI flow diagram)  - trailblizer - CRAZY BOY

A、B在同一个数据源上,LKM生成sql在IBM DB2上,生成一个数据集,并把这个数据集放到目标数据服务器的C$0表;(源与目标在同一个服务器时不需要LKM 也不需要临时表C$);然后在目标服务器上的IKM把临时表和D表生成数据流。

流图、执行计划和临时区域(ODI flow diagram)  - trailblizer - CRAZY BOY

上面的两种结构不同之处在于图1是在数据源先两个表连接再LKM,图2先LKM然后再连接。取决于那种方式更节省时间。

 

临时区域在ODI内存

流图、执行计划和临时区域(ODI flow diagram)  - trailblizer - CRAZY BOY

这个设置在接口的定义tab中设定:

流图、执行计划和临时区域(ODI flow diagram)  - trailblizer - CRAZY BOY

上图中的LKM0、LKM1、LKM2将会装载所有的数据源数据到ODI内存。有IKM整合成流然后写入目标。

注意:这种方法一般不推荐使用,但是在下面的情况下会很有用:

     ·每个数据源的数据量很小(少于10000条记录)

     ·对处理的实时要求很高

     ·临时区域目标区不同的时候,不能使用流控制

 

临时区域在一个数据源

流图、执行计划和临时区域(ODI flow diagram)  - trailblizer - CRAZY BOY

也可以在这里设定

流图、执行计划和临时区域(ODI flow diagram)  - trailblizer - CRAZY BOY

LKM0和LKM1从数据源上加载数据到C$0和C$1,然后IKM在DB2上把A、B、C$0、C$1整合起来到目标。

·当A和B的数据量很大(超过5,000,000)

·C和D很小

·A B C$0 C$1整合后很小

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值