电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > DOC文档下载
分享到微信 分享到微博 分享到QQ空间

datastage入门教程

  • 资源ID:93478317       资源大小:483.18KB        全文页数:17页
  • 资源格式: DOC        下载积分:12金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要12金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

datastage入门教程

简介DataStage 使用了 Client-Server 架构,服务器端存储所有的项目和元数据,客户端 DataStage Designer 为整个 ETL 过程提供了一个图形化的开发环境,用所见即所得的方式设计数据的抽取清洗转换整合和加载的过程。Datastage 的可运行单元是 Datastage Job ,用户在 Designer 中对 Datastage Job 的进行设计和开发。Datastage 中的 Job 分为 Server Job, Parallel Job 和 Mainframe Job ,其中 Mainframe Job 专供大型机上用,常用到的 Job 为 Server Job 和 Parallel Job 。本文将介绍如何使用 Server Job 和 Parallel Job 进行 ETL 开发。Server Job一个 Job 就是一个 Datastage 的可运行单元。Server Job 是最简单常用的 Job 类型,它使用拖拽的方式将基本的设计单元 -Stage 拖拽到工作区中,并通过连线的方式代表数据的流向。通过 Server Job,可以实现以下功能。1. 定义数据如何抽取2. 定义数据流程3. 定义数据的集合4. 定义数据的转换5. 定义数据的约束条件6. 定义数据的聚载7. 定义数据的写入Parallel JobServer Job 简单而强大,适合快速开发 ETL 流程。Parallel Job 与 Server Job 的不同点在于其提供了并行机制,在支持多节点的情况下可以迅速提高数据处理效率。Parallel Job 中包含更多的 Stage 并用于不同的需求,每种 Stage 使用上的限制也往往大于 Server Job。Sequence JobSequence Job 用于 Job 之间的协同控制,使用图形化的方式来将多个 Job 汇集在一起,并指定了 Job 之间的执行顺序,逻辑关系和出错处理等。数据源的连接DataStage 能够直接连接非常多的数据源,应用范围非常大,可连接的数据源包括:· 文本文件· XML 文件· 企业应用程序,比如 SAP 、PeopleSoft 、Siebel 、Oracle Application · 几乎所有的数据库系统,比如 DB2 、Oracle 、SQL Server 、Sybase ASE/IQ 、Teradata 、Informix 以及可通过 ODBC 连接的数据库等· Web Services · SAS 、WebSphere MQ Server JobServer Job 中的 Stage 综述Stage 是构成 Datastage Job 的基本元素,在 Server Job 中,Stage 可分为以下五种:1. General2. Database3. File4. Processing5. Real Time本节中将介绍如何使用 Datastage 开发一个 Server Job。如图 1 所示:图 1. Server Job点击查看大图Sequential File StageSequential File Stage 可用来从一个 Sequential 文件中获取源数据或将数据加载到一个 Sequential 文件中。在使用 Sequential File Stage 时需要指定文件的路径和名称,文件的格式,列的定义和文件写入的类型(覆盖或追加)。图 2. Sequential File 属性框点击查看大图图 3. Sequential File 列定义点击查看大图上图是本节例子中使用到的 Sequence File。在 Input 页中,File Name 参数代表文件的实际路径,如果文件不存在将会被自动建立。Update Action 中选择 Overwrite existing file 表示此文件在加载数据之前将被清空;在 Format 页中,定义文件的格式,例如分隔符,NULL 值,首行是否为列定义等;在 Column 页中,需要输入文件的列定义。 Hash File StageHash File 以主键将记录分成一个或多个部分的文件,在 Datastage 中通常被用做参考查找。在进行参考查找的时候,Hash File 文件会被加载到内存中,因此具有较高的查找效率。和 Sequence File 类似,使用 Hash File 时需要输入文件的实际地址,通过参数设置写入时的选项,并提供数据的列定义。需要注意的是,Hash File 需要指定主键,如果未指定,第一列被默认为主键。进行参数查找时,使用主键值在 Hash File 中搜索,如果找到则返回该数据,如果未找到则返回 NULL 值。图 4. Hash File 属性框点击查看大图Transformer StageTransformer Stage 是一个重要的,功能强大的 Stage。它负责 ETL 过程中的数据转换操作。在 Transformer Stage 中可以指定数据的来源和目的地,匹配对应输入字段和输出字段,并指定转换规则和约束条件。图 5. Transformer Stage 列映射点击查看大图Transformer Stage 中分为 5 个区域:左上方区域,是用表格形式描述的输入数据信息。 如果有多条输入数据流,则有很多表格。本例中有一个输入,一个参照查询,因此左上方有两个表格。右上方区域,是用表格形式描述的输出信息。左下方区域为输入的元数据列定义,包括列名,类型和长度等属性。右下方区域为输出的元数据列定义,包括列名,类型和长度等属性。左上方和右上方的表格由带有流向的箭头连接,代表了字段的对应关系。此例中,输入的数据只有一个字段 EMPLOYEE_ID,通过此字段在 Hash File 中进行参照查找,获取 EMPLOYEE_NAME 字段。如果在 Hash File 中找到了 EMPLOYEE_NAME 则将数据发送到输出端,这个条件是通过 Transformer Stage 提高的约束功能实现,我们在约束中的定义为 NOT(ISNULL(lkp_name.EMPLOYEE_ID)。另外无论是否在 Hash File 中查找到对应的数据,我们都将数据记录到一个 csv 文件中,即对应的 save_all 输出。Parallel JobParallel Job 的 Stage 综述与 Server job 相比,Parallel Job 提供了更丰富的 stage,增加了 Development/Debug,Restructure 和 Transactional 类的 stage。同时,对于一些在 server job 中可以在 transformer 中完成的功能,Parallel job 也提供了专用的 stage 以提高运行性能和开发效率,比如 lookup,join,Compare 等。另外一个显著的区别是在 Parallel Job 中内置地支持 job 的并行运行,并行执行也就意味着数据在 job 中的各个 stage 见处理时需要处理 partition 和 combination 的问题,所以在开发 job 时,我们需要设定 partition 和 combination 的策略。Lookup DataSet 与 Lookup StageParallel Job 对 lookup 的实现做了一些调整,在 Server Job 中,我们一般是用 Transformer Stage 配合 lookup 数据源(一般是 hash 文件)来实现 lookup,同一个 transformer 中可以同时完成多个 lookup,类似于 sql 中的多表自然联接,如果 lookup 数据源使用的是 database stage 而不是 hash file 而且对于一条记录返回多条 lookup data 的话,job 会产生 warning(hash file 的键唯一特性使得它不会存在这个问题,后面插入的重复数据会覆盖前面的同主键的数据)。而在 Parallel Job 中,lookup 需要用一个单独的 stage 来实现,transformer 不再兼职 lookup 的“副业”,在一个 lookup stage 中,可以有一个主数据 link 和多个 lookup link。同时,Parallel 中的 lookup 还有以下的新特性· 支持 multi rows,在一个 lookup stage 中对于一行主输入数据可以有一个 lookup link 返回多于一行的 lookup 数据。结果也会变成多行。· Parallel 中不在支持 hash file,转而使用封装更强的 Data Set stage, Data Set 本质上也是 hash 数据结构,但对 Job 开发人员隐藏了实现细节,我们不用象开发 Server Job 那样去手动设定详细参数· Parallel 中除了支持等值 lookup 外,还直接支持 Range lookup 和 Caseless lookup。这样我们在完成类似月份转换为季度性质的设计时就会非常的方便和自然。类似于 Server Job 中的 hash 文件,在 Parallel Job 中我们使用 Data Set 文件来缓存 lookup 数据,并加载到内存中,在 Data Set stage 中,我们只需要制定记录的主键和存储的文件名,Parallel 引擎会为我们处理其他的操作。但为了达到性能的最优化,我们有时需要制定 Data Set 的缓存策略和缓存大小,系统默认的缓存大小是 3M,如果我们的 lookup 数据比较大,就需要设定合适的缓存大小,否则会严重影响 lookup 的性能。图 6. DataSet 缓存设置点击查看大图Sort StageParallel Sort stage 的行为类似于 Sql 中的 order by,但是比 order by 提供了更多的选项。在 job 中,Sort stage 接收一个输入 link 并产生一个输出 link。对于写过 sql order by 或者排序程序的开发人员使用 Sort Stage 的基本功能应该是很简单的,但是要充分发挥 Parallel stage 的强大功能,我们还是需要注意下面几点:· 并行还是串行执行,如果选择串行执行,那么 Sort stage 的行为就类似于 Server Job 中的 Sort Stage,整个输入数据都会按照设定的排序选项排序,但如果选择分区 / 并行排序,则只有每个分区内的输出是有序的,这在有些情况下是可以接受的,但在另外一些情况下会导致代码缺陷,需要根据 sort 的后续操作做出选择。· 如果有可能,尽量在数据源端的数据库中进行排序,这样不但会提高数据排序的效率,还能大大减少 job 对内存,I/O 的压力。Sort stage 只有在接收完输入之后才能完成排序,进而输出数据,使得 job 的后续 stage 都处于等待状态。· 类似于 order by 后面的字段列表,我们可以指定排序的方向,是升序还是降序,Sort Stage 也可以指定对多个字段进行排序,排在前面的 column 称为主排序字段,如果排序字段中有某一个或几个字段已经是有序的,我么也可以指定其为有序,这样在排序的时候就可以提高排序的效率。· 稳定排序(stable sort)/ 允许重复,stable sort 默认是 yes,这样如果两条记录 sort key 相

注意事项

本文(datastage入门教程)为本站会员(小**)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.