ITPUB??ì3
ITPUB论坛 » 数据仓库与数据挖掘 » Datastage的参数传递

标题: Datastage的参数传递
离线 liangf215


来自 火星
精华贴数 0
个人空间 0
技术积分 1629 (1018)
社区积分 636 (1187)
注册日期 2005-4-27
论坛徽章:5
会员2007贡献徽章生肖徽章2007版:鼠生肖徽章2007版:鼠ITPUB新首页上线纪念徽章  
      

发表于 2008-6-20 12:09 
Datastage的参数传递

传递参数主要是为了增量抽取,我的设计思想是这样:ETL控制表里存放每个主题每天要跑的数据的起始和截止时间(增量不一定跑的就是前一天的),然后从ETL控制表获取到当前主题本次跑数据的起始、截止时间,两个时间传递到数据源表的SQL里,得到本次的数据,然后进行处理,由于ETL控制表和数据源表在不同的库,不能直接在一个SQL里把数据源表和ETL控制表关联,各位有没有别的解决方案?要是传递参数,怎么把从ETL控制表获取的值赋给变量?


__________________
My Blog:www.gold-life.com.cn 数据库 数据仓库
MSN:zhang_wust@hotmail.com
即便一小步,也有新高度。做最好的自己,我能!!!
只看该作者    顶部
离线 Hot_mobile


来自 福建厦门
精华贴数 0
个人空间 0
技术积分 113 (14906)
社区积分 0 (1696108)
注册日期 2008-2-13
论坛徽章:2
2008北京奥运纪念徽章:击剑2008北京奥运纪念徽章:自行车    
      

发表于 2008-6-25 14:17 
关注中......................


只看该作者    顶部
离线 lynx286
陈永仁


精华贴数 0
个人空间 0
技术积分 1651 (1002)
社区积分 151 (2690)
注册日期 2003-7-23
论坛徽章:10
现任管理团队成员ITPUB元老管理团队2007贡献徽章参与2007年甲骨文全球大会(中国上海)纪念管理团队2006纪念徽章会员2007贡献徽章
会员2006贡献徽章授权会员生肖徽章2007版:龙ITPUB新首页上线纪念徽章  

发表于 2008-6-25 23:41 
用shell script读出参数表中得数据可以传过去。


__________________
只看该作者    顶部
离线 cuixuezheng
初级会员



来自 北京
精华贴数 0
个人空间 0
技术积分 242 (7891)
社区积分 1 (42631)
注册日期 2007-2-8
论坛徽章:0
      
      

发表于 2008-6-26 16:59 


QUOTE:
原帖由 lynx286 于 2008-6-25 23:41 发表
用shell script读出参数表中得数据可以传过去。

思路是什么?那个是DataStage来处理,怎么传呢?


只看该作者    顶部
离线 stenny
资深会员


精华贴数 1
个人空间 20
技术积分 2641 (578)
社区积分 828 (1026)
注册日期 2002-8-5
论坛徽章:7
ITPUB元老Heart of PUB会员2007贡献徽章授权会员2008北京奥运纪念徽章:射击2008年新春纪念徽章
ITPUB新首页上线纪念徽章     

发表于 2008-6-26 23:30 
在执行期传递动态参数有一个办法是酱紫滴(有点弱):

一个控制JOB (abc),包括:OCI-->TXN-->平文件
加一个routine: DSSetUserStatus

TXN中可以定义一个stage variable,根据OCI读出来的数据设定UserStatus
将该JOB abc 置于Job Sequence中,出来的Trigger Condition用abc.$UserStatus来决定job sequence的流向

PS:写完发现和楼主的要求有点出入,楼主能否解释详细些?


__________________
每个人都要做出选择.但最终,往往是选择决定了我们
只看该作者    顶部
离线 liangf215


来自 火星
精华贴数 0
个人空间 0
技术积分 1629 (1018)
社区积分 636 (1187)
注册日期 2005-4-27
论坛徽章:5
会员2007贡献徽章生肖徽章2007版:鼠生肖徽章2007版:鼠ITPUB新首页上线纪念徽章  
      

发表于 2008-6-27 19:25 


QUOTE:
原帖由 lynx286 于 2008-6-25 23:41 发表
用shell script读出参数表中得数据可以传过去。

我也是这个思路,先按照规则更新数据库的参数表,然后再用shell给datastage的参数赋值,不知道还有没有好的办法,不通过shell的。


__________________
My Blog:www.gold-life.com.cn 数据库 数据仓库
MSN:zhang_wust@hotmail.com
即便一小步,也有新高度。做最好的自己,我能!!!
只看该作者    顶部
离线 ppgoml
初级会员



精华贴数 0
个人空间 0
技术积分 32 (37959)
社区积分 0 (489297)
注册日期 2005-6-29
论坛徽章:0
      
      

发表于 2008-7-5 11:22 
我们的做法是先将控制信息写到hash file 中,然后通过datastage sdk中的UtilityHashLookup()功能把参数取出来传给相应的job

希望对你有帮助


只看该作者    顶部
离线 jiashun_hu
初级会员



精华贴数 0
个人空间 0
技术积分 38 (33677)
社区积分 1 (40022)
注册日期 2006-3-8
论坛徽章:0
      
      

发表于 2008-7-8 14:50 
将参数写入文件,然后使用OSH读取文件中的值赋给参数。这可能是最常用的方法了。


只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问