DataStage技术方案_第1页
DataStage技术方案_第2页
DataStage技术方案_第3页
DataStage技术方案_第4页
DataStage技术方案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、目录2.附录B:DataStage企业版内嵌的扩展Stage143.附录C:扩展连接191. 绪论DataStage企业版是Ascential Software公司所有企业整合系列产品中关键产品。企业版支持大容量数据的收集、整合和转换,数据从简单结构到很复杂的结构。基于高可扩展性的软件架购,企业版使得企业能够通过高性能来解决大部分业务问题,并行处理大容量数据。强大的企业元数据管理能力使得可以在数据整合生命周期中在所有工具中共享和使用工具。DataStage企业版发布了四个核心功能来成功实施企业数据整合:先进的开发和维护;完整的开发环境;企业级实施和管理;高扩展的体系架构;端对端的企业级元数据管

2、理。1.1 先进的开发和维护DataStage企业版提供了全面的功能去最优化用户在建立、升级和管理数据整合架构时的速度、灵活性和效率。DataStage企业版增强的功能减少了学习的周期、简单化了管理和优化了开发资源的使用,减少了数据整合应用的开发和维护周期。结果,DataStage企业版使得企业能够花更少的时间开发他们的整合应用,更多的时间是不断的从中受益。DataStage企业版使用了Client-server架构,如下所示。图一、DataState企业版Client-Server架构用户通过各个客户端工具访问DataStage企业版的开发、配置和维护功能。这些工具包括:Designer:用

3、来建立和编辑DataStage作业和表的定义。Designer中的“Job Sequencer”控制作业的执行,其他作业成功完成(或失败,等)的条件。Administrator:用来执行管理任务,如建立DataStage用户、建立和删除工程并且建立清洗标准。Manager:用来编辑管理用户工程的DataStage资料库。Director:用来验证、时序安排、运行和监测企业版作业。如图一所示,DataSage企业版的服务器组件运行在一系列的流行服务器上,如Unix、Windows等。1.2 完整的开发环境用户使用DataStage企业版的Designer组件建立企业版数据整合应用。企业版设计是基

4、于数据流的概念。数据流使得用户非常容易建立和理解应用。用户在一个强大的图形化调色板上通过一系列的功能组件(Stage)标示数据集合的流程来构建一个数据整合应用。一个完整的数据流图(DataStage作业),从一个永久存储的数据源开始,并且执行一系列的增值转换和其他处理操作,最后加载数据到一个永久的存储。但是,企业版Designer开始使用户可以灵活从任何地方可以建立作业:从上到下、从下到上、从中间开始。一个完整的企业版数据流图如图二所示。图二、DataStage企业版数据流图示在建立一个企业版数据流图表时,通过一系列的处理步骤对庞大的数据集合构架顺序流。用户不需要担心如何在多处理器计算机上运行

5、该应用。企业版对数据整合应用工作流的顺序描述和在生产环境中应用的并行执行做了一个清晰的区分。企业版处理数据集 (data set)。数据集就是对通过数据流程的记录的收集。一个数据集可以是屋里放置在磁盘上,也可以是虚拟放置在内存中。数据在数据流中的Stage中移动使用的是虚拟的数据集,这样可以大大提高性能;分区(在后面介绍)是在Stage的属性中设置的。企业版提供了多个内嵌的Stage来执行通用的数据整合任务,如Sort、Merge、join、filter、Transform和Aggregate。更完整的内嵌Stage列表参考本文档的Appendix A。每个企业版Stage是一个完整的功能组件

6、,已经在多处理器系统中高吞吐量和高性能并行执行过。这些Stage根除了为通常的数据处理应用进行编码的需要。用户可以在企业版Designer GUI中找到这些内嵌的Stage。用户可以使用Stage的下拉菜单来这只Stage的参数。企业版Aggregator Stage的编辑器如下所示。图三、企业版编辑Aggregator Stage图标和Stage编辑器例子企业版Transformer Stage是一个强大和灵活的组件,允许用户对input link输入的数据进行转换。并且将数据传到另一个活动的Stage或者将数据写到目标数据或文件。Transformer编辑器(如下所示)使得用户可以在inp

7、ut link和output link间简单建立mapping,并且可以使用BASIC等语言建立任意转换。这些转换可以并行执行来提高吞吐量和性能。企业版提供了超过100个内嵌的功能,另外可以用C或C+编写的route在转换中使用和进行互操作。图四、企业版Transformer Stage图标和Stage编辑器例子DataStage企业版内嵌的Stage包括高性能访问(加载和读)关系型数据库的强大组件,包括并行的关系型数据库。例如,企业版的Oracle Stage提供了一个访问Oracle表的高性能并行接口。Oracle Stage支持Load和Upsert写方式和支持表和查询的读方式。企业版也

8、可以利用DB2强大的数据库分区特性和Teradata的高性能、并行数据加载和导出。另外,DataStage企业版提供了一些Stage可以使得SAS用户在大容量数据上执行SAS。Parallel SAS Data Set Stage通过SAS Stage的连接从一个并行的SAS数据集中读取和写入数据。通过利用并行硬件执行平台和并行关系型数据库,这些SAS Stage能够将大大增强需要进行处理和分析大数据量的SAS的吞吐量和性能。企业版的内嵌扩展Stage提供了数据整合应用中80到90的最常用的逻辑需要。另外,企业版提供了许多机制用来建立自定义的Stage:n Wrapped允许并行执行一个顺序程

9、序。n Build允许自动并行执行自定义Stage的C语言表达式。n Custom 提供了完整的CAPI,来开发复杂和扩展的Stage。基于组件架构和扩展内嵌组件类库的DataStage企业版消除了对传统编码方式的需要,最大化了组件的重复使用。对于可扩展的数据整合应用来说,企业版开放的和可扩展的架构使得整合第三方软件工具和已存在的程序更加容易。Stage和作业的单独分区,包括每一个Stage的联合分区、元数据(表定义)和Transformer转换定义,可以在共享容器 (Share Container) 中被其他用户重复使用。共享容器允许用户提高产品性和在用户和工程间共享。作业模板 (Job T

10、emplate)进一步提升了效率。用户能够比以前更快地启用已定义好的模板。同时,标准化的模板也提供给用户一个高效的起始点。智能帮助提供建造从简单到复杂的作业。用户通过一系列的询问,智能帮助可以象魔术师一样输出一个DataStage企业版作业或作业序列。他们使用元数据智能提示用户答案和输出最后的结果。Ascential载入一些智能助手,一个建立纬度缓慢变化 (Slow Changing Dimension) 的星型架构 (Star Schema) 的数据库(类型1、2、3支持)。1.3 企业级实施和管理许多大的公司都有他们自己在复杂生产环境下的配置、时间序列、监测和管理应用的标准。DataSta

11、ge企业版提供了灵活功能来迎合这些需要。首先,DataStage提供了一个图形化的作业顺序器 (Job Sequencer),允许用户定义作业执行的序列。设计一个作业序列就象设计一个作业。用户在DataStage中设计作业序列。从工具条增加一个Activities(相对于Stage),并且通过Trigger进行连接用以定义控制流。每个activity都有属性,可以在trigger表达式中测试并且传到序列前面的其他的activity中。Activity也可以有参数,可以用来支持job参数或routine参数。Job序列可以有自己的属性和参数,这些属性和参数可以顺序传到activity中。序列也可

12、以包括控制信息,例如,序列中job的成功或失败影响活动的走向。一旦job序列被定义完成,可以在任何提供的接口(下面做详细的介绍)中建立时间顺序和执行。图五、DataStage Job序列例子其次,企业版提供了Director和Manager的图形化功能。象前面说过的,manager是用来管理工程的,包括导入和导出组件,用来将应用配置到产品。Director用来建立时序,执行和监测job(或job序列)。另外,企业版提供了commandline、API和web services用来对应用进行配置、执行、监测和管理。Job能够使用所有的工具进行开始、停止和监测。可以提供所有的工具查看Job监测的详

13、细内容包括Director。企业版返回的信息包括每个并行分区的记录条数、CPU使用率、开始/结束时间等。所有的这些都是在单独的stage级别。这个命令行接口是:dsjob report <project> <job> <report type>report type = BASIC,DETAIL,XML可通过XML schema 和 XML style sheets对正在运行的job进行不同角度的查看。就算job已经完成,这些信息仍然是可用的。这就是operational meta data。Command line和web service接口通过文本或XM

14、L方式返回出这些operational meta data。对于国际数据的需要,DataStage企业版可以处理和管理multi-byte的数据结构。客户端相应(如属性设置和表定义)可以使用用户本地的语言。用户可以根据国际校正规则建立客户化的排序规则。1.4 高扩展的体系架构建立在高扩展软件架构上的企业版提供了高级别的吞吐量和性能。象前面所描述的,用户可以使用企业版的Designer工具建立简单的顺序数据流图表。当构架出顺序的数据流图表,用户不用担心底层的硬件架构和处理器的数量。一个专门的配置文件可以定义这些底层多处理器计算环境中的资源(处理器、内存、磁盘)。这个配置可以在顺序数据流图表和应用

15、的并行执行之间建立一个清晰的分离。这样就可以很简单开发扩展的数据整合系统并且并行执行(如图六所示)。DataStage企业版可在管道并行和分区并行的机制下执行,这样可以获得高吞吐量和性能:n 数据管道 (Data Pipelining) 意味着应用可以从源系统拉入数据并且在数据流图表中定义的顺序处理功能间移动。记录通过管道进行流动使用上面介绍过的数据集 (DataSet) 【虚拟】这样使得记录通过一系列的功能组件进行流动而不需要将记录加载到磁盘。n 数据分区 (Data Partitioning) 是一种将记录集分割到各个分区,或记录子集的并行方法。数据分区通常提供了一种好的、可以线性增长的应

16、用性能。企业版支持记录集通过应用流的自动分区,象DB2一样使用hash、range、entire、random、round robin等方法。这个benchmark是在写数据(每条记录平均534 byte、50多个字段)之前进行了15此的不同的转换。图8以1:1的比例显示出处理器导致近乎线性的性能扩展。Ascential Software可以提供充详细及验证过的性能benchmark报告。2. 附录B:DataStage企业版内嵌的扩展StageStage描述Transformer对任何需要转换的输入的数据集合进行转换,并将数据传输到其他活动的Stage中或一个将数据写入数据库或文件的Stag

17、eSort用来并行执行更复杂的排序操作Merge将一个或多个排序的更新数据集合合并成一个排序的主数据集合Join在一个或多个输入数据集合上执行连接操作并输出一个结果数据集,连接操作支持:Inner、Left Outer、Right Outer和 Full OuterExternal Filter允许指定一个作为处理数据过滤器的Unix命令行Aggregator对于单一的输入数据记录进行分组并且计算每一组的合计和总计Make Vector组合输入数据记录中指定的字段到一个具有相同类型的字段矢量Make Subrecord组合指定的输入数据集合中的矢量到子记录的矢量,它的字段具有和原始矢量相同的名

18、字和类型Split Vector提升固定长度矢量的参数到一系列相似的命名顶级字段Combine Records组合那些主键字段值被指定的记录到子记录矢量Compare对两个分拣输入数据集合中的记录进行一个字段一个字段的检查Lookup对包含在 Lookup File Set Stage中的查找表进行查找操作Lookup File Set允许建立一个查找文件集或查找参考Funnel拷贝多个输入数据集到一个输出数据集;对于将分开的数据集合合并成一个大的数据集;支持持续的读、排序、顺序输入数据集。Copy拷贝一个输入数据集到多个输出数据集;输入数据集中的每一条记录拷贝到每一个输入的数据集中,而且不需

19、要修改Sample使用百分比或一段模式对输入的数据集进行取样Peek将记录字段值显示到作业日志或分开的output link,就象Copy Stage将输入的数据集拷贝到一个或多个输出数据集Remove Duplicates对输入的数据集进行单一排序,删除重复的记录,并将结果写入一个输出的数据集Modify改变输入字段定义到输出数据集(如类型转换或null处理/转换等);对于重新命名和类型转换使非常有效率的Filter基于用户指定的约束(“where子句”)将输入数据集转换到不同的输出数据集(Link)。对于过滤记录使非常有效率的。Switch根据选择器字段的值,将一个输入记录分配到一个输出的

20、Link,支持128个Output Link和1个Reject Link。Change Capture抓取两个输入数据集,表现为前和后,并且获取后面的数据路输出一个记录表现已经改变的数据集Change Apply抓取变化数据,包括前面或后面数据记录变化,从Change Capture Stage并应用编码改变操作到前面数据集,计算一个后面数据集Head从一个输入数据集合分区中选择第一个N条记录并且将选择的记录拷贝的输出数据集中Tail从一个输入数据集分区中选择最后一个N条记录并且将选择的记录拷贝的输出数据集中WriteRange Map将数据写入Range Map;抓取排序或排序产生的数据集合

21、,并写入到一个文件用于范围分区方法Encode使用支持的Unix编码命令对一个数据集合进行编码;将一个顺序数据集合转换到没有处理过的二进制数据流Decode使用支持的Unix解码命令对一个数据集合进行解码;将一个没有处理过的二进制数据流转换到数据集合Compress使用Unix Compress或GZIP工具压缩数据集合;将一个顺序数据集合转换到没有处理过的二进制数据流Expand使用Unix Uncompress或GZIP工具展开数据集合;将一个没有处理过的二进制数据流转换预先压缩的数据集合到一个数许数据集合Difference对两个输入的数据集合进行逐条的对比,相同数据集合的不同转换产生出

22、前面和后面的数据集合Column Import从一个字段导入数据并且输出到一个或多个字段Column Export从多个不同类型的字段导出数据到一个字符类型或二进制类型的字段Column Generator增加字段到输入数据并且为处理的数据行字段产生假数据;输出新的数据集合Row Generator产生一组适合指定表定义的假数据;对于不使用真实可用数据对作业进行测试非常有用Data Set从一个数据集读取数据或将数据写入一个数据集;企业版隐藏了复杂的处理和在并行计算机上并行存储数据到磁盘File Set从一个文件中读取数据或将数据写入文件;并行执行Sequential File从一个Flat

23、File读取数据或将数据写入Flat File;通常是并行执行和可以配置成顺序执行External Source从一个或多个源程序读取数据External Target将数据写入一个或多个目标程序Parallel SAS Data Set从并行SAS 数据集合读取数据或将数据写入并行 SAS 数据集合;用于同 SAS stage进行连接SAS用于并行执行部分 SAS 应用DB2IBM DB2 UDB访问l 从DB2数据库读取数据或将数据写入DB2数据库l 顺序执行或并行执行l 支持DB2的 Hash分区l 支持 Write、Upsert和 Load的写方法l 支持表、自动产生SQL和用户定义SQL读方法OracleOracle数据库访问l 从Oracle数据库读取数据或将数据写入Oracle数据库l 顺序执行或并行执行l 支持 Load和 Upsert写方法l 支持Table和Q

温馨提示

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

评论

0/150

提交评论