Datastage开发经验汇总 润信科技
1 引言
1.1 编写目的
DataStage作为在建行数据实施中指定的ETL工具,迫切的要求我们实施人员必须对其功能有个全面的了解,并对一些经常使用到的技术能够熟练的掌握。学习和掌握DataStage,特别是对于没有接触过的新手,能够有一份指导性的文档使其尽快的上手,对我们公司现在和将来加强实施队伍的技术能力是具有十分重大的意义。希望这份文档能够成为我们润信科技在DataStage技术积累的起点。
1.2 参考资料
本文档的参考资料主要来自: 1、平时工作记录下来的经验; 2、参与培训的笔记、记录; 3、建行提供的相关规范和指导手册; 4、DataStage自身提供的帮助文档。
1.3 说明
这份文档写得比较仓促,加上本人经验限制,所以还有很多地方需要大家一起来完善。知识在于不断地积累;众人拾柴火焰高。希望大家提出宝贵意见,让这份文档更加丰富多彩,成为一份全面、适用的指导性文档。如有疑问,可发至本人邮箱:wengyuanzai@163.com。希望与大家一起进步。
注:有很多知识点是从参考文档中摘取的,有些没有经过试验;有的试验的结果也可能不够全面。希望大家在发现问题后及时提出来。
第1页
Datastage开发经验汇总 润信科技
2 DS软件简介
2.1 DataStage企业版概述
2.1.1 绪论
DataStage企业版(正式称为DataStage XE并行组合)是Ascential Software公司所有企业整合系列产品中关键产品。企业版支持大容量数据的收集、整合和转换,数据从简单结构到很复杂的结构。基于高可扩展性的软件架购,企业版使得企业能够通过高性能来解决大部分业务问题,并行处理大容量数据。强大的企业元数据管理能力使得可以在数据整合生命周期中在所有工具中共享和使用工具。
DataStage企业版发布了四个核心功能来成功实施企业数据整合:advanced development and maintenance,加速开发和简单化维护;enterprise deployment and management提供了企业级别的开发、监测和管理能力;highly scalable architecture,在吞吐量和性能方面提供了没有限制的扩展能力;end-to-end enterprise meta data management提供了整个企业数据的管理和联系数据的一种方法。
2.1.2 Advanced Development and Maintenance
DataStage企业版提供了全面的功能去最优化用户在建立、升级和管理数据整合架构时的速度、灵活性和效率。DataStage企业版增强的功能减少了学习的周期、简单化了管理和优化了开发资源的使用,减少了数据整合应用的开发和维护周期。结果,DataStage企业版使得企业能够花更少的时间开发他们的整合应用,更多的时间是不断的从中受益。
DataStage企业版使用了Client-server架构,如下所示。
第2页
Datastage开发经验汇总 润信科技
图一、DataState企业版Client-Server架构
用户通过各个客户端工具访问DataStage企业版的开发、配置和维护功能。这些工具包括:
Designer:用来建立和编辑DataStage作业和表的定义。Designer中的“Job
Sequencer”控制作业的执行,其他作业成功完成(或失败,等)的条件。
Administrator:用来执行管理任务,如建立DataStage用户、建立和删除
工程并且建立清洗标准。
Manager:用来编辑管理用户工程的DataStage资料库。
Director:用来验证、时序安排、运行和监测企业版作业。
如图一所示,DataSage企业版的服务器组件运行在一系列的流行服务器上,如Unix、 Windows等。
第3页
Datastage开发经验汇总 润信科技
2.1.3 Complete Development Environment
用户使用DataStage企业版的Designer组件建立企业版数据整合应用。企业版设计是基于数据流的概念。数据流使得用户非常容易建立和理解应用。用户在一个强大的图形化调色板上通过一系列的功能组件(Stage)标示数据集合的流程来构建一个数据整合应用。一个完整的数据流图(DataStage作业),从一个永久存储的数据源开始,并且执行一系列的增值转换和其他处理操作,最后加载数据到一个永久的存储。但是,企业版Designer开始使用户可以灵活从任何地方可以建立作业:从上到下、从下到上、从中间开始。一个完整的企业版数据流图如图二所示。
图二、DataStage企业版数据流图示
在建立一个企业版数据流图表时,通过一系列的处理步骤对庞大的数据集合构架顺序流。用户不需要担心如何在多处理器计算机上运行该应用。
企业版对数据整合应用工作流的顺序描述和在生产环境中应用的并行执行做了一个清晰的区分。
第4页
Datastage开发经验汇总 润信科技
企业版处理数据集合。数据集合就是对通过数据流程的记录的收集。一个数据集合可以是屋里放置在磁盘上,也可以是虚拟放置在内存中。数据在数据流中的Stage中移动使用的是虚拟的数据集合,这样可以大大提高性能;分区(在后面介绍)是在Stage的属性中设置的。
企业版提供了12个内嵌的Stage来执行通用的数据整合任务,如Sort、Merge、join、filter、Transform和Aggregate。更完整的内嵌Stage列表参考本文档的Appendix A。每个企业版Stage是一个完整的功能组件,已经在多处理器系统中高吞吐量和高性能并行执行过。这些Stage摒弃了对通用数据处理用于的传统编写代码方式。用户可以在企业版Designer GUI中找到这些内嵌的Stage。用户可以使用Stage的下拉菜单来这只Stage的参数。企业版Aggregator Stage的编辑器如下所示。
图三、企业版编辑Aggregator Stage图标和Stage编辑器例子
企业版Transformer Stage是一个强大和灵活的组件,允许用户对input link输入的数据进行转换。并且将数据传到另一个活动的Stage或者将数据写到目标数据或文件。Transformer编辑器(如下所示)使得用户可以在input liks和output link间简单建立mapping,并且可以使用BASIC等语言建立任意转换。这些转换可以并行执行来提高吞吐量和性能。企业版提供了超过100个内嵌的功能,另外可以用C或C++编写的route在转换中使用和进行互操作。
第5页