您的位置:首页 > 运维架构 > Shell

shell调用dsjob--datastage job的注意事项

2014-01-03 11:24 543 查看
在现实项目中,有时我们不会在Designer Client或者Director Client直接运行datastage job, 而是通过shell调用,下面简单介绍一下可能遇到的问题及解决办法。

本机调用命令(命令中的参数:SourceFile是区分大小写的,需要多加注意)

./dsjob -run -mode NORMAL -param SourceFile=DAD_DDDC_Multi-Date_Oct_2013_v1.csv ANALYZERPROJECT Untitled1

远程调用命令(下面的ip地址也可以使用[server name]代替)

dsjob -server 192.168.12.** -user stmttest -password 123456 -run -mode NORMAL -param SourceFile=DAD_DDDC_Multi-Date_Oct_2013_v1.csv ANALYZERPROJECT Untitled1

问题1:

执行dsjob的时候遇到"error while loading shared libraries: xxx.so.x"问题,可参考我的上一篇博客进行解决。

问题2:

code -2 (DSJE_BADSTATE)之类的返回错误。

解决办法:

通常是因为上一次的dsjob运行失败,导致它当前处于:RUNFAILED, CRASHED的状态而无法再次运行。

使用下边的命令,查看一下dsjob的当前状态。

./dsjob -jobinfo ANALYZERPROJECT Untitled1

如果发现其状态错误,可以使用下列命令进行状态重置,然后再运行。

./dsjob -run -mode RESET ANALYZERPROJECT Untitled1

问题3:

以Excel作为数据源文件进行数据提取。

解决办法:

datastage9及以上版本可以直接读取Excel文件。

如果项目确实需要在低版本datastage进行这种操作,我的建议是使用catdoc(开源免费小工具,可以到国外网站进行下载)中的xls2csv工具,进行提取前转化。

在下边的IBM的网站里,我们可以找到大量相关的技术支持文章,希望有所帮助:
http://www-01.ibm.com/support/docview.wss?uid=swg21595194
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: