您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > datastage使用说明
用DataStage进行数据整合DataStage的开发环境是基于C/S模式的,通过DataStageClient连接到DataStageServer上进行开发。这里有一点需要注意,DataStageClient只能安装在Windows平台上面。而DataStageServer则支持多种平台,比如Windows、RedhatLinux、AIX、HP-UNIX。DataStageClient有四种客户端工具。分别是DataStageAdministrator、DataStageDesigner、DataStageManager、DataStageDirector。接下来首先介绍这几种客户端工具在DataStage架构中所处的位置以及它们如何协同工作来开发ETLJob的,接着再分别详细介绍每个工具的功能。图1描述了IBMWebSphereDataStage的整个系统架构。DataStage的客户端工具连接到DataStageServer上进行ETLJob的开发,DataStageServer再与后台的数据库连接起来进行数据处理。DataStage的客户端工具之间的是一个相互合作的关系。下面通过介绍ETLJob的开发过程来介绍他们之间的这种关系。ETLJob开发流程1.用DataStageAdministrator新建一个项目;2.用DataStageDesigner连接到这个新建的项目上进行ETLJob的设计;3.用DataStageDirector对设计好的ETLJob设置运行的模式,比如多长时间运行一次ETLJob;4.用DataStageManager进行ETLJob的备份等。图1:IBMWebSphereDataStage架构图DataStageAdministratorDataStageAdministrator的主要功能有以下几个:1.设置客户端和服务器连接的最大时间。以管理员的身份登陆DataStageAdministrator。你就会看到如下图所示的画面。在这里你可以设置客户端和服务器的最大连接时间,默认的最大连接时间是永不过期。最大连接时间的意思就是如果客户端和服务器的连接时间超过了最大连接时间,那么客户端和服务器之间的连接将被强行断开。2.添加和删除项目在Projects这个标签中,可以新建或者删除项目,以及设置已有项目的属性。这里有必要介绍一下项目的概念,要用DataStage进行ETL的开发,首先就要用DataStageAdministrator新建一个项目,然后在这个项目里面进行ETLJob的开发。3.License的管理可以在Licensing标签中更新License。DataStageDesignerDataStageDesigner是ETLJob开发的核心环境。值得注意的是,登陆DataStageDesigner的时候,不仅要指定DataStageServer的IP,而且要指定连接到这个DataStageServer上的哪个项目上面,上面已经提到DataStage的项目是由DataStageAdministrator来创建的。DataStageDesigner的主要功能可以概括为以下三个方面:1.ETLJob的开发DataStageDesigner里面包含了DataStage为ETL开发已经构建好的组件,主要分为两种,一种是用来连接数据源的组件,另一种是用来做数据转换的组件。利用这些组件,开发人员可以通过图形化的方式进行ETLJob的开发。2.ETLJob的编译开发好ETLJob后,可以直接在DataStageDesigner里面进行编译。如果编译不通过,编译器会帮助开发人员定位到出错的地方。3.ETLJob的执行编译成功后,ETLJob就可以执行了,在DataStageDesigner里面可以运行ETLJob。ETLJob的运行情况可以在DataStageDirector中看到,这方面的内容将在介绍DataStageDirector的时候提到。DataStageManagerDataStageManager主要用来管理项目资源。一个项目可能包含多个ETLJob,可以用DataStageManager把一个项目里面的ETLJob导出来。然后再用DataStageManager导入到另外一个项目中去,利用这个功能一方面可以实现ETLJob的备份,另一方面就是可以在多个项目之间来重复使用开发好的ETLJob。在DataStageManager里面可以把数据库中的表结构直接导入到项目中来,供这个项目中的所有ETLJob使用。DataStageDesigner也提供了从数据库中直接导入表结构的功能。DataStageDirectorDataStageDirector主要有以下两个功能:1.监测ETLJob的运行状态ETLJob在DataStageDesigner中编译好后,可以通过DataStageDirector来运行它。前面在介绍DataStageDesigner的时候提到在DataStageDesigner中也可以运行ETLJob,但是如果要监测ETLJob的运行情况还是要登陆到DataStageDirector中。在这里,你可以看到ETLJob运行的详细的日志文件,还可以查看一些统计数据,比如ETLJob每秒所处理的数据量。2.设置何时运行ETLJobETLJob开发完成后,我们可能希望ETLJob在每天的某个时间都运行一次。DataStageDirector为这种需求提供了解决方案。在DataStageDirector中可以设置在每天、每周或者每月的某个时间运行ETLJob。ETLJob的并行执行ETLJob的并行执行是IBMWebSphereDataStage企业版的一大特色。ETLJob开发好以后,可以在多台装有DataStageServer的机器上并行执行,这也是传统的手工编码方式难以做到的。这样,DataStage就可以充分利用硬件资源。而回页首且,当你的硬件资源升级的时候也不用修改已经开发好的ETLJob,只需要修改一个描述硬件资源的文件即可。并行执行能力是DataStage所能处理数据的速度可以得到趋近于线性的扩展,轻松处理大量数据。开发一个简单的ETLJob我们将要开发一个非常简单的ETLJob,使大家对用DataStage进行ETL开发有一个总体的认识。将要开发的ETLJob是把DB2数据库DATBH中的表UUFILEL的内容导入到另外一个ORALCEL里数据库SPC中的表OVERTIME_ANALYSIS中。1.配置ODBC数据源用OracleNet连接,定义简称来标识服务的位置,如SPC数据库,通过标识符的简称映射到连接描述符(它包含服务的网络位置和标识)。2.新建项目(这边是以AS400数据导入到ORACLE中为例子)(1)用DataStageAdministrator登录到DataStageServer。Hostsystem是安装DataStageServer的主机,输入它的IP地址或者主机名。另外再输入用户名和密码后,单击按钮OK;回页首(2)登录后,在标签Projects中可以看到目前这个DataStageServer上面所有的项目。单击按钮Add新建一个项目;(3)在弹出的对话框中输入项目名SampleProject,项目存储的默认路径是DataStage安装路径的Projects目录下面,你可以通过单击按钮Browse来改变默认路径。注意不要钩上选择框Createprotectedproject,因为如果钩上的话你所创建的工程将没办法被改变。单击按钮OK;(4)你会看到在项目列表里面已经有了我们刚创建好的项目SampleProject,单击按钮Close关闭DataStageAdministrator;(5)用DataStageDesigner登陆到DataSatgeServer,输入DataStageServer的IP或主机名以及用户名和密码,并指定Project为我们刚才创建的项目SampleProject。单击按钮OK;(6)在DataStageDesigner当中单击File'New去创建一个新的ETLJob;(7)选择SeverJob,单击按钮OK;(8)创建一个新的ETLJob名称为OVERTIME,单击工具栏上的图标保存,或者用快捷键Ctrl+S来保存,这时候一个保存ETLJob的对话框会弹出来;(9)从左边的Database列表中将ODBC和ORACLE拖曳至右边的设计区域。接着,从左边的Processing列表中将Transform拖曳至右边的设计区域。(17)左键双击左边的ODBC图标,会弹出如下图所示的属性框。在标签Stage的子标签General中,设置Stagename和Servername。UserID和Password设置为右权限访问这个数据库的用户名和密码。TransactionIsolation的默认的选项是CursorStability,保持默认选项然后单击标签Output;(18)在标签Output的子标签General中,选择GeneratedSQLQuery。这样DataStage会自动帮你生成大部分的SQL代码。然后单击子标签Columns;(19)点Columns子标签,建表结构,建完后单击OK按钮;(20)在设计区域中双击ORACLE图标,会弹出如下图所示的属性框。在INPUT子标签属性表中,选择要导入的表名和更新数据的方式,如下图(21)在设计区域中,双击transform图标,用户可以在Stage中,对传入的数据进行任何必要的处理,再把处理好的数据传给下一个Stage。下图就是一个正在被编辑的TransformerStage,窗口的上半部分显示了输入与输出的字段之间的对应关系,其中DSLink3是输入的连线名称,DSLink4是输出的连线名称。而窗口下半部分详细说明了每一个输入或者输出字段的定义。如果仅仅是把输入与输出的字段对应起来,那并不能体现出TransformerStage的作用。实际上,用户可以通过编辑输出字段的derivation区域的值,对输入字段的值进行修改,使其结果可以满足输出字段的要求。用户只需要双击某个字段的derivation区域(图1中的红色区域)就可以对其进行编辑。这时,再点击右键即可出现一个菜单以便用户选择DataStage内置的或者用户自定义的功能函数的分类。当用户选择了其中的一种类型,就会弹出另一个窗口展示出DataStage中此种类型中的所有内容,如图2所示。图2.DataStage中各种用于数据转化的功能函数(22)点击下图中的运行按钮,就可以看到数据传输的情况。(31)打开DataStageDirector如下图所示,OVERTIME的状态变成了Finished。OVERTIME成功结束运行;
本文标题:datastage使用说明
链接地址:https://www.777doc.com/doc-3996039 .html