IBMDataStage技能培训PPT课件.ppt_第1页
IBMDataStage技能培训PPT课件.ppt_第2页
IBMDataStage技能培训PPT课件.ppt_第3页
IBMDataStage技能培训PPT课件.ppt_第4页
IBMDataStage技能培训PPT课件.ppt_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2017 03 02 IBMDataStage技能培训 内部培训 编写者 Wanke Li Cigna 培训内容大纲1IBMDatastageV9 1 01工具介绍2DataStage工具的组成3Stage控件介绍 源库的连接方式及比较4常用Stage使用的介绍5ParallelJOB SequenceJOB例子6DataStage的调度7DataStage存储过程的调用8DataStage备份及恢复9DataStage常见错误处理 培训内容大纲 什么是DataStage 最专业的ETL工具 价格不菲 使用难度一般 IBMWebSphereDataStage 下面简称为DataStage 为整个ETL过程提供了一个图形化的开发环境 它是一套专门对多种操作数据源的数据抽取 转换和维护过程进行简化和自动化 并将其输入数据集市或数据仓库的集成工具 多种字符集支持 Datastage几乎支持目前所有的编码格式 传统的数据整合方式需要大量的手工编码 而采用IBMDataStage进行数据整合可以大大的减少手工编码的数量 而且更加容易维护 数据整合的核心内容是从数据源中抽取数据 然后对这些数据进行转化 最终加载到目标数据库或者数据仓库中去 这也就是我们通常所说的ETL过程 其它ETL集成工具 Informatica公司的PowerCenter专业程度如Datastage旗鼓相当 也是图形化界面开发 很多控件的功能与Datastage相似 价格似乎比Datastage便宜 可以在Window Linux Unix Aix等多个环境上运行 KettleKettle中文名叫水壶 纯java编写的开源ETL工具 开源当然就免费 免费的有些东西使用就不是很方便 很多功能需要结合Java开发 可以在Window Linux Unix Aix上运行 数据抽取高效稳定 ODIOracle数据库厂商提供的工具 有局限性 与oracle数据库耦合太深 完备的开发环境 IBMWebSphereDataStage的开发环境是基于C S模式的 通过DataStageClient连接到DataStageServer上进行开发 DataStageServer支持多种平台 比如Windows RedhatLinux IBMAIX HP UNIX等 DataStage架构图 DataStage可操作的数据源 DataStage能够处理多种数据源的数据 包括主机系统的大型数据库 开放系统上的关系数据库和普通的文件系统等 以下列出它所能处理的主要数据源 1 大型主机系统数据库 IMS DB2 ADABAS VSAM等2 开放系统的关系数据库 Oracle DB2 MicrosoftSQLServer Teradata Informix Sybase等3 ERP系统 SAP R3 PeopleSoft SAS StatisticalAnalysisSystem 系统等4 普通文件和复杂文件系统 FTP文件系统 XML等5 WebServices DataStage工具的组成 DataStage企业版使用了Client server架构 如下所示 Designer工具 Designer 用来创建各种可执行的Job JobSequence ParallelJob ServerJob 修改删除各种Job 设置Job的参数 导入表的元数据 表结构 自定义用户元数据 1 Job的开发2 Job的编译3 Job的执行4 Job的DEBUG5 JobReport的生成 Administrator工具 用来执行管理任务 如建立DataStage用户 建立和删除工程并且建立清洗标准 设置工程的各种参数属性 系统的环境变量属性 服务器字符集 并行作业字符集设置 自动清除日志设置等 Manager工具 DataStageManager主要用来管理项目资源 一个项目可能包含多个ETLJob 可以用DataStageManager把一个项目里面的ETLJob导出来 然后再用DataStageManager导入到另外一个项目中去 利用这个功能一方面可以实现ETLJob的备份 另一方面可以通过Manager实现多版本客户端切换 在DataStageManager里面可以把数据库中的表结构直接导入到项目中来 供这个项目中的所有ETLJob使用 9 1 01以上版本可以在Designer中直接用Import Export对JOB TableDefinitions Routines进行备份 Director工具 DataStageDirector主要有以下两个功能 1 监测ETLJob的运行状态ETLJob在DataStageDesigner中编译好后 可以通过DataStageDirector来运行它 前面在介绍DataStageDesigner的时候提到在DataStageDesigner中也可以运行ETLJob 但是如果要监测ETLJob的运行情况还是要登陆到DataStageDirector中 在这里 你可以看到ETLJob运行的详细的日志文件 还可以查看一些统计数据 比如ETLJob处理的数据量 JOB运行时长等 2 设置ETLJob调度ETLJob开发完成后 我们可能希望ETLJob在每天的某个时间都运行一次 DataStageDirector为这种需求提供了解决方案 在DataStageDirector中可以设置在每天 每周或者每月的某个时间运行ETLJob ParallelJOB常用Stage控件介绍 DB操作控件OracleConnector ODBCConnector DB2Connector Sybase TeradataConnector 文件操作控件常用的有SequentialFile 可指定编码形式和格式的txt文件 可设置字段分隔符 行记录分隔符 日期时间格式 空值处理等 3 数据处理控件主要的处理控件有Transformer Aggregator Join Lookup Copy Sort Filter Switch RemoveDuplicates Funnel ChangeCapture Transformer是负责数据转换的关键控件 在该控件中可以调用一些自定义函数 Aggregator是用于统计的控件 类似于SQL中的GROUPBY 也提供Count Max Min Sum AVG的统计操作 还支持如First Last等操作 Switch数据分流 RemoveDuplicates去除重复数据 Funnel相当于UnionAall ChangeCapture根据key值做数据比对用的 华为那边做缓慢变化使用该控件 SequenceJOB常用Stage控件介绍 序列 1 Job Activity 调用对应的ParallelJOB2 Execute Command 执行Shell Perl等脚本 命令3 Sequencer 序列控制 有2中值 ALL 或 Any 4 Wait For File Activity 文件等待 等待文件出现或者消失的时候开始执行后面的序列5 UserVariables Activity 自定义参数控件 可以定义全局参数 供整个JOB引用6 Routine Activity 调用封装好的Routine Routine类似于SQL中的存储过程 Demo SEQ POL MAIN 一个数据抽取转换装载的实例 Demo CopyCopyPjob PRIP LJTEMPFEE实例目的 暂收费表 根据中保信二期逻辑改造而来 介绍PrallelJOB常用Stage使用方法 制作步骤 1 在Administrator里定义参数 设置默认值 2 导入目标表的元数据信息 字段名称 字段类型 3 在面板上放入上页图示的控件并进行连线4 检查目标表和SQL字段别名的一一对应关系 字段个数必须相等5 填入Oracle控件数据库连接参数 导入目标表数据列 填入SQL Test数据库连通性 SQL正确性 6 在Transform拖入输出列 并对需要类型转换的字段做处理 7 填入文件路径 并设置字段分隔符 行记录分隔符 字符集 Null值处理 日期时间处理 8 编译并运行 第一步截图 设置自定义参数 第二步 导入目标表元数据 选择如图功能项 填入数据库参数 选择导入表及导入目录 2020 1 27 19 第三步 建job并放入控件 在Designer中新建一个ParalleJob 可以使用Annotation进行美化注释 第四步 填入ORACLE连接参数 SQL逻辑 并Test是否能够连通DB SQL是否正确 第五步 调整transform输出列 进行类型转换 第六步 填入Sequential文件参数 第七步 编译运行 点击编译 没有错误后 打开Director察看日志 然后运行 DataStage的调度 运行Director 选择需要设置的Job 在右键菜单中点击 Addtoschedule 在窗口中选择需要定时执行的选项 DataStage存储过程的调用 方法一 可以通过SQL语句块调用存储过程 DataStage存储过程的调用 方法二 两种调用比较 第一种简单明了 但是取不到存储过程的返回值 第二种方法比较复杂 下去可以在测试环境搞搞 DS备份 导出 可以选择不同的对象进行备份 一般建议完全备份 选择Wholeproject DS恢复 导入 可以选择不同的对象进行导入 dsx格式或 XML格式 DataStage常见错误处理 1 Filler和sqlload的关键字冲突问题DataStage在oracle全表插入的时候 原理是将文件打散后并行调用sqlldr 由于filler字段是其关键字 所以不能有字段叫filler 测试中将其该为filler1或其他名字 2 Tablecolumns和tabcolumns一致的问题StageColums里面的名字一定要和SQL指定的字段名字 或者字段别名相同 sql里面如果有名字相同的字段 一定要有别名 保持字段名字的唯一性 Colums字段顺序要和SQL字段顺序一致 否则数据会错乱 3 数据库连接失败问题在Administrator客户端已经配置好DB TNS DB USER DB PWD 但是在跑ParallelJOB的时候数据库Test不通 本次连不上数据库是因为作业属性设置的密码是错误的 重新把缺省值改为 PROJDEF连接成功 注 建议把所有参数对应的缺省值都改为 PROJDEF 表示默认从Administrator获取参数值 DataStage常见错误处理 4 Decimal类型字段生成文件 数据不符合要求在生成文件的时候Decimal 16 2 这种带精度的字段输出的数据错误 前面补了很多0 补齐16位 把Decimal类型改为Varchar DataStage常见错误处理 5 时间戳问题Oracle中字段类型是Date类型 但是数据是带时分秒的 在DS中如果选用Date类型 生成文件会丢失时分秒 改为Timestamp类型 6 文件数据中途换行字段值中间有换行符 导致文件数据自动换行了 解决方法 找到换行符对应的ASCII码值 替换成 或者其他符号REPLACE REPLACE REPLACE REPLACE S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论