Datastage开发经验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NEUSOFT
Datastage开发经验开发手册
刘石磊
2014/7/23
目录
第一章 Datastage连接配置 (3)
1.配置DS连接 (3)
2.打开DS designer,选择服务层主机名,输入用户名密码,然后在项目中选择对应的开发项目,确定后进入DS开发界面 (3)
第二章 Datastage Designer开发 (4)
1.在Jobs目录下建立自己的开发目录层级 (4)
2.job调用关系 (4)
3.job能调用的组件 (5)
4.开发一个job (6)
5.导入表定义(Table Definitions) (17)
6.开发一个sequence (20)
a.新建Sequence,将并行job拖入设计面板 (20)
b.保存编译后即可运行 (20)
7.运行job (21)
8.全局参数&环境变量设置 (23)
9.在job和sequence中调用参数 (24)
a.Job中变量参数设置 (24)
b.Sequence中变量参数设置 (27)
10.调用存储过程 (28)
a.新建一个job,作业属性配置如下图 (28)
b.调用存储过程,在查询存储过程运行状态的表的sql前—Before SQL,调用存储
过程CALL ETL.SP_IPRO_ETL_ALL('#$p_etl_date#'); (28)
11.运行job失败时怎么办 (29)
第三章 Datastage Director使用 (30)
a.只有处于已编译和已完成状态的job或sequence才能直接运行 (30)
b.查看报错日志 (30)
c.job日志过滤 (31)
d.再次运行job (32)
第四章 Datastage Designer其它功能 (33)
1.Job搜索 (33)
修订历史记录
日期版本作者描述审核人2014/7/23 V1.0 刘石磊DS开发的一点点经验
第一章 Datastage连接配置
1.配置DS连接
DS服务器搭建好后,需要在客户端配置方可连接(DS服务器搭建没做过)
首先,在C:\Windows\System32\drivers\etc\hosts文件中加上服务器IP或计算机名和DS的项目名称。
2.打开DS designer,选择服务层主机名,输入用户名密码,然后在项目中选择对应的开发
项目,确定后进入DS开发界面
第二章 Datastage Designer开发
1.在Jobs目录下建立自己的开发目录层级
2.job调用关系
最常用到的是并行作业和序列作业,并行作业为最小job单位,序列作业既可以包装和调用多个并行作业,也可以包装和调用多个序列作业。
3.job能调用的组件
在Stage Types 文件夹下,Parallel文件夹下的各组件并行作业可以调用,Sequence下的组件序列作业可以调用。
例如:新建一个并行作业,将Sequence的组件拖上去后,出现无法调用的图标,表示此组件在并行作业不可用。
如下图,可用的组件拖上去是这种图标
在进行开发时,使用组件选用板更方便,打开选用板方法:查看—选用板
选用板如下图,其实就是把Stage Types里面的内容以另一种形式展现出来
4.开发一个job
例如:开发一个表对表的数据抽取,从s_orduna表中抽取数据,然后对抽取的数据进行过滤,满足条件company_code=’’的插入表s_orduna_full,不满足条件company_code=’’的插入s_orduna_error
a.新建并行作业,将选用板里面的注释组件拖进去,写上此job的功能,建议用英文注
释
b.将数据库组件拖进去,db2使用db2 connector
c.将过滤组件拖进去
d.各组件在没有连接时,一些属性是不会显示的,因此用处理箭头把他们连接起来,
按住鼠标右键,从一个组件开始,到另一个组件时放开,就可以把组件连起来
e.修改组件名,双击组件,在阶段—阶段名称,修改即可
也可以左键单击一下组件,间隔1秒后再左键单击,可以直接修改
f.将表定义装入列属性(注:这里既可以手动输入select的表定义,也可以从Table
Definitions装入,Table Definitions的相关操作见第7节)
注意,去掉“确保全部Char列使用Unicode”的勾,否则抽取的记录可能会乱码
g.从表中抽取数据
各属性填写:
Instance 一般不需要填,具体作用没研究过
Database 数据库名称,oracle就不知道了可能需要配置
(没讲解的属性默认值就可以,具体什么用处自己去研究)
Genrate SQL 选择“是”表示使用DS自动生成的sql,根据前面导入的列进行select,此项选“是”,下面的SQL选项就会失效,此时抽取的是表中所有的记录,不会做处
理和过滤
选择“否”,表示不使用DS自动生成的sql,就需要在SQL中写查询语句
Table name 抽取数据的表名称
SQL—Select stagement 使用select语句进行查询,这种方式可以对一些字段进行函数转换,也可以加where条件等
Before/After sql 在执行上面的select前需要执行的sql
Sql写好后,可以点击查看数据,查询出结果表示sql写的没问题
h.定义Filter
如果是单表对单表的数据直抽,就不需要Filter,如果对抽取的结果做分流,就需要加上Filter组件,默认是一个where条件,有几个数据分流就添加几个Where Clause
添加后,写上对应的过滤条件