DataStage技术方案
- 格式:doc
- 大小:362.00 KB
- 文档页数:15
DATASTAGE——一DATASTAGE经验积累一、JOB的分类与作用1、Server JOB:最为常用的Job类型,Job可以组合使用,Server Job是Job的最小单位。
原文档:If you have the Web Services pack installed an additional check box, Web Service Enabled, appears. Select it to indicate the job can be made available as a web service.2、Parallel JOB:3、Mainframe JOB:运行于大型机的JOB。
4、JOB Sequences:Job Sequence主要用于Job间的协作工作控制,如各Job的实行流程,出错处理,文件监控等。
二、jobstatus的用法jobstatus-jobstatus waits for the job to complete, then returns an exit code derived from the job status.命令格式为:dsjob –run[ –mode [ NORMAL | RESET | VALIDATE ] ][ –param name=value ][ –warn n ][ –rows n ][ –wait ][ –stop ][ –jobstatus][–userstatus][-local]project job三、判断NULL值 实例STAGE :JOIN STAGE设置:LEFT JOIN左输入语句:SELECT * FROM PMP_Insured_Amount右输入语句:SELECT COL_ID,TAB_NAME,WORK_DATE,REF_COLUMN1 AS UNIQUE_ID_IN_SRC_SYS,REF_COLUMN2,ROW_ID,HASHCODE AS B_HASHCODE,ANCHOR_ID,PARTITION_KEY,IS_DUPLICATED,'A' AS MARK --用以判断结果集右边是否为空FROM ETL_FOR_INC_TMP2SQL语句:SELECT A.*,B.*FROM PMP_Insured_Amount ALEFT JOIN ETL_FRO_INC_TMP2 BON A.UNIQUE_ID_IN_SRC_SYS = B.UNIQUE_ID_IN_SRC_SYS 功能:判断来自A表的所有记录,哪些能够B表关联,哪些不能与B表关联。
数据仓库中的数据来自于多种业务数据源,这些数据源可能来自不同的硬件平台,使用不同的操作系统,数据模型也相差很远,因而数据以不同的方式存在于数据库中。
如何获取并向数据仓库中加载这些数据量大,种类多的数据,已成为建立数据仓库所面临的一个关键问题。
针对目前系统的数据来源复杂,而且分析应用尚未成型的现状,强烈推荐使用专业的数据抽取、转换和装载工具--DataStage数据仓库:Data Warehouse,简写DW或DWH.是决策支持系统和联机分析数据源的结构化数据环境。
数据仓库研究和解决从数据库中获取信息的问题。
数据仓库的特征在于面向主题、集成性、稳定、和时变性。
数据源:整个系统的数据源泉,数据仓库的基础。
数据的存储与管理:是整个数据仓库系统的核心。
数据仓库数据库:是整个数据仓库的核心,是数据存放的地方和提供对数据检索的支持。
6101,7111,7115,4111,5107,3141DataStage是IBM开发的,是一套专门针对多种操作数据源的数据抽取,转换,和维护过程进行简化和自动化,并将其输入数据集市或数据仓库目标数据源的集成工具。
3 安装于初始化?reject 方式是什么?Continue,Output,Fail(后面有)Inputs、Outputs Stage 怎么添加自动化数据库连接Sequential File 中的View Data?View Data 不了?参数配置Save,Load分别什么作用,区别?Table 的格指什么??Lookup Stage???,怎么匹配???????Modify Stage怎么修改的表结构?2012-4-26Administrator的使用,如建立清洗标准?ViewData中value值是从数据库查询出来?DB2 Stage中#$SRC_INSTANCE#,#是临时表?什么意思?TestDemo is being accessed by another user?锁表已解决(有文档):两种方式Copy Stage的作用?仅仅是交换字段输出怎么保存文件?自动保存2012-4-27DataStage Director中:Permission denied ?将多个字段相同的数据文件合并为一个单独的文件输出 ???输入的相同的字段合并输出到一个字段 ???2012-4-28Transformer 字段的转换是将字段名和数据类型都转换?????Administrator:用来执行管理任务,如建立DataStage用户,建立和删除工程并且建立清洗标准。
4.1.1DataStage的优化策略4.1.1.1 充分利用并行处理功能(有效度:★★★★★)数据仓库系统的数据源大都以几个交易系统为基础,结合了多个应用系统和外部的数据源,银行业中涉及到电话银行、手机银行、自动取款、银行卡等多种业务,包括了总账、分户账、账户明细等各个层面的数据,数据量非常大。
DataStage具有专有的并行处理组件和良好的并行处理能力。
为了提高数据处理效率,充分利用系统资源,在数据处理的设计方案中可充分利用ETL并行数据处理功能。
系统数据处理流程中采用的并行处理方式主要包括以下两种:(1) 分析数据处理流程没有依赖关系的数据处理可以并行执行。
数据仓库系统的数据模型是一个有机的整体,但在数据处理过程中并不是完全互相依赖、密不可分的,对于没有前驱后继关系的数据处理模块可以并行执行。
通过分析与设计,理清数据处理流程中的数据处理模块及它们之间的依赖关系,发现数据处理结构的特点,然后不同分支上的数据处理模块可并行执行。
(2) 拆分源文件使同一数据源中不同特点的数据可以并行处理。
在同一数据源文件中,经常存在着不同特点的数据,需要按照不同的规则进在同一数据源文件中,经常存在着不同特点的数据,需要按照不同的规则进行匹配和处理。
当面对大量数据时,这种处理往往非常耗时,甚至不能在用户接受的时间内完成。
在此情况下,使用外部程序对文件拆分,将不同特点的数据拆分到不同的文件中,这样后续的数据处理面对的是多个没有依赖关系的数据源,这些数据处理也是可以并行执行的。
如银行分户帐余额积数文件,可将其拆分为贷款户、定期户、往来户、表外户、财务户和内部户,每种帐户的数据处理规则单一,且面对的源数据量大大减小,从而缩短了整个分户帐数据处理的时间。
4.1.1.2 调整源数据在磁盘上的分布(有效度:★★★★★)由于数据的读写对磁盘的I/O依赖比较强,我们尽量将不同的数据分配到不同的文件系统,这些文件系统被mount到不同的磁盘上,如增量文件、全量文件、Scratch 目录、Datasets目录,以及目标文件的存放。
Datastage介绍及示例1 Datastage 简介Datastage包含四大部件:Administrator、Manager、Designer、Director。
1.用DataStage Administrator 新建或者删除项目,设置项目的公共属性,比如权限。
2.用DataStage Designer 连接到指定的项目上进行Job的设计;3.用DataStage Director 负责job的运行,监控等。
例如设置设计好的job的调度时间。
4.用DataStage Manager 进行Job的备份等job的管理工作。
2 设计一个JOB示例2.1 环境准备目标:将源表中数据调度到目标表中去。
1 数据库:posuser/posuser@WHORADB , ip: 192.168.100.882 源表:a_test_from3 目标表:a_test_to两者表结构一样,代码参考:create table A_TEST_FROM(ID INTEGER not null,CR_SHOP_NO CHAR(15),SHOP_NAME VARCHAR2(80),SHOP_TEL CHAR(20),YEAR_INCOME NUMBER(16,2),SHOP_CLOSE_DATE DATE,SHOP_OPEN_DATE DATE);alter table A_TEST_FROMadd constraint TEST primary key (ID);4. 示例数据:insert into A_TEST_FROM (ID, CR_SHOP_NO, SHOP_NAME, SHOP_TEL, YEAR_INCOME, SHOP_CLOSE_DATE, SHOP_OPEN_DATE)values (24402, '105420580990038', '宜昌市云集门诊部', '82714596 ', 1000, to_date('01-05-2008', 'dd-mm-yyyy'), to_date('01-06-2008', 'dd-mm-yyyy'));insert into A_TEST_FROM (ID, CR_SHOP_NO, SHOP_NAME, SHOP_TEL, YEAR_INCOME, SHOP_CLOSE_DATE, SHOP_OPEN_DATE)values (24403, '105420559982198', '于志良', '82714596 ', 2000, to_date('02-05-2008', 'dd-mm-yyyy'), to_date('02-06-2008', 'dd-mm-yyyy'));insert into A_TEST_FROM (ID, CR_SHOP_NO, SHOP_NAME, SHOP_TEL, YEAR_INCOME, SHOP_CLOSE_DATE, SHOP_OPEN_DATE)values (24404, '105420556410012', '阳光儿童广场', '82714596 ', 3000, to_date('03-05-2008', 'dd-mm-yyyy'), to_date('03-06-2008', 'dd-mm-yyyy'));insert into A_TEST_FROM (ID, CR_SHOP_NO, SHOP_NAME, SHOP_TEL, YEAR_INCOME, SHOP_CLOSE_DATE, SHOP_OPEN_DATE)values (24405, '105420580620033', '秭归县医疗中心', '82714596 ', 4000, to_date('04-05-2008', 'dd-mm-yyyy'), to_date('04-06-2008', 'dd-mm-yyyy'));insert into A_TEST_FROM (ID, CR_SHOP_NO, SHOP_NAME, SHOP_TEL, YEAR_INCOME, SHOP_CLOSE_DATE, SHOP_OPEN_DATE)values (24406, '105420559120063', '同德医药零售北门连锁店', '82714596 ', 5000, to_date('05-05-2008', 'dd-mm-yyyy'), to_date('05-06-2008', 'dd-mm-yyyy'));2.2 打开Designer任务:打开datastage designer,连接datastage服务器1.双击桌面datastage designer图标。
1、【第一章】datastage简介与工作原理1、简介数据中心(数据仓库)中的数据来自于多种业务数据源,这些数据源可能是不同硬件平台上,使用不同的操作系统,数据模型也相差很远,因而数据以不同的方式存在不同的数据库中。
如何获取并向数据中心(数据仓库)加载这些数据量大、种类多的数据,已成为建立数据中心(数据仓库)所面临的一个关键问题。
针对目前系统的数据来源复杂,而且分析应用尚未成型的现状,专业的数据抽取、转换和装载工具DataStage是最好的选择。
Websphere DataStage 是一套专门对多种操作数据源的数据抽取、转换和维护过程进行简化和自动化,并将其输入数据集市或数据中心(数据仓库)目标数据库的集成工具。
DataStage 能够处理多种数据源的数据,包括主机系统的大型数据库、开放系统上的关系数据库和普通的文件系统等,以下列出它所能处理的主要数据源:大型主机系统数据库:IMS,DB2,ADABAS,VSAM 等开放系统的关系数据库:Informix,Oracle,Sybase,DB2,Microsoft SQL Server等ERP 系统:SAP/R3,PeopleSoft系统等,普通文件和复杂文件系统,FTP 文件系统,XML等IIS,Netscape,Apache等Web服务器系统Outlook等Email系统。
DataStage 可以从多个不同的业务系统中,从多个平台的数据源中抽取数据,完成转换和清洗,装载到各种系统里面。
其中每步都可以在图形化工具里完成,同样可以灵活的被外部系统调度,提供专门的设计工具来设计转换规则和清洗规则等,实现了增量抽取、任务调度等多种复杂而实用的功能。
其中简单的数据转换可以通过在界面上拖拉操作和调用一些DataStage 预定义转换函数来实现,复杂转换可以通过编写脚本或结合其他语言的扩展来实现,并且DataStage 提供调试环境,可以极大提高开发和调试抽取、转换程序的效率。
1. DataStage(ETL工具)要求:5用户数2.技术要求ETL过程必须有图形化的开发、管理和监控界面;ETL处理过程支持各种字符集的转换;ETL处理过程具有完整的日志管理功能、完善的数据审计功能。
并且有相关的监控预警机制,保证ETL正常进行,不影响数据源系统和经营分析系统的正常工作;ETL处理过程可以定义外部数据记录的错误限制,如发现最多1000条错误数据记录时停止进行处理,同时将发生错误的数据记录加到相应的错误表中; 支持多种操作系统平台,如UNIX、Windows NT/2000/2003、Linux等;支持Oracle、DB2、Sybase、SQL Server等业界主流数据库软件平台;采用高性能的数据抽取接口,比如:专用数据库驱动接口、JDBC、ODBC接口等;数据转换模块可进行二次开发,并通过对内嵌脚本语言、存储过程、插件及外部程序的支持来处理复杂的处理,提供调试、跟踪功能;丰富的数据加载功能:可以利用关系型数据库引擎私有的装载功能(native load)进行数据装载;ETL工具必须支持一定的数据转换功能,支持ETL过程中数据转换环节执行顺序、支持的数据平滑化、规范化、聚类等转换操作;ETL工具必须提供自动文档生成功能;ETL工具作业开发支持过程驱动方法和自顶向下的设计,提供设计模板;ETL工具提供灵活的作业开发的参数支持;ETL处理过程必须包括有统一调度、监控和管理的功能。
具有元数据提取和存储的功能,通过元数据管理实现数据冲突分析、血统分析功能。
具有基于Web上的系统管理、作业调度和元数据展现。
ETL工具处理过程应能够支持并行(集群)处理,并能支持多服务器组成网格进行并行处理。
3. 实施要求3.1实施计划投标方需要在标书中提出项目实施计划的草案,内容包括:1)投标方必须给出切实可行的项目实施时间进度表。
2)所有可交付的开发成果、服务及交付时间和方式。
3)可交付的开发成果及服务之间的依赖关系。
DATASTAGE的介绍及基本操作DataStage的基本操作包括设计和开发数据集成任务、管理数据集成任务的执行、监控任务的运行状态和性能等。
下面将分别介绍DataStage 的设计和开发、任务管理和监控等方面的基本操作。
1.设计和开发数据集成任务:- 创建项目:在DataStage中创建一个新的项目,并指定项目的名称和存储位置。
-创建作业流:在项目中创建一个新的作业流,并指定作业流的名称和描述。
-添加源和目标:将源数据和目标数据的连接器添加到作业流中,并配置其连接属性。
-设计转换:使用图形化工具将数据转换逻辑以节点的方式添加到作业流中。
可以使用预定义的转换函数、过滤器和聚合函数,并自定义转换规则。
-配置作业参数:为作业流设置参数,例如源数据的路径、目标数据的路径等。
-配置作业调度:定义作业流的调度规则,例如每日、每周或每月执行一次。
2.任务管理:- 启动任务:在DataStage的用户界面中选择要执行的作业流,并单击启动按钮来启动任务。
-监控任务状态:查看任务的运行状态,例如正在运行、已完成或已失败。
-管理调度:可以根据需要修改任务的调度规则,例如修改任务的执行时间或频率。
-管理依赖关系:设置任务之间的依赖关系,例如一个任务的输出作为另一个任务的输入,确保任务按照正确的顺序执行。
3.监控任务:- 实时监控:在DataStage的用户界面中查看任务的实时执行情况,包括输入/输出数据的数量、处理速度、错误记录等。
-查看日志:查看任务执行的详细日志,包括每个节点的执行情况、输入/输出数据的详细信息、转换规则的执行结果等。
-分析性能:分析任务的性能指标,例如任务的执行时间、内存使用情况、CPU利用率等,以优化任务的运行效率。
DataStage还提供了其他高级功能,例如数据质量检查、数据变化捕获和增量加载等。
此外,DataStage与其他数据集成工具和平台的集成也是可能的,例如与大数据处理框架Hadoop、数据仓库工具Teradata等的集成。
DataStage简单介绍:一、DataStage的特性:DataStage是在构建数据仓库过程中进行数据清洗、数据转换的一套工具。
它的工作流程如下图所示:DataStage包括设计、开发、编译、运行及管理等整套工具。
通过运用DataStage 能够对来自一个或多个不同数据源中的数据进行析取、转换,再将结果装载到一个或多个目的库中。
通过DataStage的处理,最终用户可以得到分析和决策支持所需要的及时而准确的数据及相关信息。
DataStage支持不同种类的数据源和目的库,它既可以直接从Oracle、Sybase 等各种数据库中存取数据,也可以通过ODBC接口访问各种数据库,还支持Sequential file类型的数据源。
这一特性使得多个数据源与目标的连接变得非常简单,可以在单个任务中对多个甚至是无限个数据源和目标进行连接。
DataStage自带了超过300个的预定义库函数和转换,即便是非常复杂的数据转换也可以很轻松的完成。
它的图形化设计工具可以控制任务执行而无须任何脚本。
二、DataStage的架构:DataStage采用C/S模式工作,其结构如下:DatastageServerProjectManager Designer DirectorDataStage 支持多种平台,其Server 端可运行于以下平台:Windows 2000、Windows NT 、COMPAQ Tru64、HP-UX 、IBM AIX 、Sun Solaris ;Client 端支持以下平台:Win95、Win98、Winme 、Windows NT 、Windows 2000;三、功能介绍DataStage 的Server 端由Repository 、DataStage Server 及DataStage Package Installer 三部分组成,Client 端则由DataStage Manager 、DataStage Designer 、DataStage Driect 及DataStage Administrator 四部分组成。
简介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 MQServer JobServer Job 中的Stage 综述Stage 是构成Datastage Job 的基本元素,在Server Job 中,Stage 可分为以下五种:1.General2.Database3.File4.Processing5.Real Time本节中将介绍如何使用Datastage 开发一个Server Job。
Datastage产品开发使用指南目录目录 (I)1. 引言 (1)2. 常用STAGE使用说明 (1)2.1.S EQUENTIAL F ILE S TAGE (1)2.2.A NNOTATION (4)2.3.C HANGE C APTURE S TAGE (5)2.4.C OPY S TAGE (7)2.5.F ILTER S TAGE (8)2.6.F UNNEL S TAGE (9)2.7.T ANSFORMER S TAGE (10)2.8.S ORT S TAGE (11)2.9.L OOK U P S TAGE (12)2.10.J OIN S TAGE (12)2.11.M ERGE S TAGE (14)2.12.M ODIFY S TAGE (15)2.13.D ATA S ET S TAGE (16)2.14.F ILE S ET S TAGE (17)2.15.L OOKUP F ILE S ET S TAGE (19)2.16.O RACLE E NTERPRISE S TAGE (21)2.17.A GGREGATOR S TAGE (22)2.18.R EMOVE D UPLICATES S TAGE (24)2.19.C OMPRESS S TAGE (25)2.20.E XPAND S TAGE (26)2.21.D IFFERENCE S TAGE (27)2.22.C OMPARE S TAGE (29)2.23.S WITCH S TAGE (30)2.24.C OLUMN I MPORT S TAGE (31)2.25.C OLUMN E XPORT S TAGE (33)3. DATASTAGE ADMINISTRATOR常用配置 (35)3.1.设置T IME O UT时间 (35)3.2.设置P ROJECT的属性 (36)3.3.更新D ATA S TAGE S ERVER的L ICENSE和本地C LIENT的L ICENSE (37)4. DATASTAGE MANAGER使用 (37)4.1.导入导出J OB及其它组件 (37)4.2.管理配置文件 (39)5. DATASTAGE DIRECTOR使用 (40)5.1.察看J OB的状态,运行已经编译好的J OB (40)5.2.将编译好的J OB加入计划任务 (43)5.3.监控J OB的运行情况 (44)1.引言DataStage EE的开发主要由DataStage Designer完成。
DataStage基础及开发实践InfoSphere DataStage是IBM统一数据集成平台InfoSphere Information Server(IIS) 的重要组件,是业界主流的 ETL(Extract, Transform, Load) 工具。
DataStage执行从源系统到目标系统的批量和实时的数据转换和移动,它广泛支持各种异构平台的数据源和各种类型的数据格式(结构化、半结构化和非结构化数据);通过简单易用的图形化设计方式,并内置丰富的功能组件,从而支持从简单到高度复杂的数据结构中,对大量数据进行收集、清洗、整合和转换,具有满足最苛刻的数据集成需求所需的功能性、灵活性和可伸缩性。
本课程主要介绍InfoSphere DataStage的基本架构和产品特点,并基于实战案例详细讲解DataStage 的安装、配置、开发以及最佳实践。
课程大纲:第一课 IBM数据集成与治理方案简介第二课 Infosphere Datastage 架构、安装与配置第三课 Infosphere Datastage 管理与开发部署流程第四课 Infosphere Datastage 数据连接组件使用第五课 Infosphere Datastage 数据合并、排序与聚合组件使用第六课 Infosphere Datastage 数据转换组件使用第七课 Infosphere Datastage 自定义公共组件与过程第八课 Infosphere Datastage 作业序列和作业控制第九课 Infosphere Datastage 作业调试、调度与监控第十课 Infosphere Datastage 数据血源分析第十一课 Infosphere Datastage 性能调优和最佳实践第十二课 Infosphere Datastage 实战案例分享授课对象:本课程由浅入深,循序渐进地介绍DataStage的基本原理和开发实践,主要面向DataStage 的初学者以及基础开发运维人员。
在本文中,您将看到一个同时处理多个数据源和目标的 ETL Job 的开发过程,并了解DataStage 中 Container 和 Job Sequence 的用法。
引言系列的第一部分介绍了 DataStage 的基本功能。
本文将从以下几个方面深入介绍 IBM WebSphere DataStage 在数据整合方面的强大功能。
1. Job Sequence 的用法2. DataStage Container 的用法3.开发一个同时处理多个数据源和目标的 ETL JobJob Sequence 的用法在用 IBM WebSphere DataStage 进行数据整合的过程中,我们一般会开发很多个单独的 ETL Job 去完成特定的逻辑功能,这些 ETL Job 之间的运行顺序往往是有限制的,那么我们如何处理 ETL Job 之间的这种依赖关系呢?IBM WebSphere DataStage 提供了处理这种问题的方法,那就是使用 Job Sequence。
使用 Job Sequence 可以方便的处理 ETL Job 之间的依赖以及运行顺序问题。
下面我们通过开发一个简单的 Job Sequence 来演示 Job Sequence 的用法。
开发一个 Job Sequence 和开发一个 ETL Job 的方法是类似的,都是用 DataStage Designer 来开发。
我们将要开发的这个 Job Sequence 的功能是实现两个 ETL Job 的顺序执行,并且在第一个 ETL Job 运行成功的情况下第二个 ETL Job 才开始执行。
因此我们必须先准备两个 ETL Job,这两个 ETL Job 的名字分别为 Job1 和 Job2。
开发步骤1.打开 DataStage Designer。
如下图所示,从下拉列表中选择 Job Sequence。
这样就会新建一个 Job Sequence;图 1:新建 Job Sequence2. 新建的 Job Sequence 如下图所示。
目录1 如何重新启动DataStage服务器, 步骤如下: (4)2 DataStage开发经验积累: (4)2.1模板开发 (4)2.2通过S ERVER S HARED C ONTAINER在P ARALLEL J OB中添加S ERVER J OB S TAGE (4)2。
3去除不需要的字段 (4)2.4T RANSFORMER S TAGE的使用 (4)2。
5L OOK UP/JOIN 空值处理 (5)2。
6D ATA S TAGE中默认和隐式类型转换时注意的问题 (5)2。
7配置一个INPUT或OUTPUT,就VIEW DATA一下,不要等到RUN时再回头找ERROR (5)2。
8D ATA型数据是比较麻烦的 (5)2.9行列互换之H ORIZONTAL P IVOT(P IVOT S TAGE) (6)2.10行列互换之V ERTICAL P IVOT (6)2。
11O RACLE EE S TAGE在VIEW数据时出现的错误及解决方法 (8)2。
12D ATA S TAGE SAP S TAGE的使用 (9)2.13C OLUM I MPORT S TAGE的使用 (9)2.14C OLUM E XPORT S TAGE的使用 (11)2。
15G OT ERROR:C ANNOT FIND ANY PROCESS NUMBER FOR STAGES IN J OB J OBNAME解决 (12)2.16U NABLE TO CREATE RT_CONFIG NNN (13)2.17查看JOB和CLIENT的对应的后台进程 (13)2。
18强制杀死DS进程 (13)2.19查看S ERVER E NGINE的进程 (14)2。
20查看S ERVER L OCKS (14)2。
21关于UNIX系统下无法启动服务的解决办法 (15)2.22L OCKED BY OTHER USER (16)2。
DataStage技术介绍目录1.绪论错误!未指定书签。
1.1先进的开发和维护错误!未指定书签。
1.2完整的开发环境错误!未指定书签。
1.3企业级实施和管理错误!未指定书签。
1.4高扩展的体系架构错误!未指定书签。
2.附录B:DataStage企业版内嵌的扩展Stage错误!未指定书签。
3.附录C:扩展连接错误!未指定书签。
1.绪论DataStage企业版是AscentialSoftware公司所有企业整合系列产品中关键产品。
企业版支持大容量数据的收集、整合和转换,数据从简单结构到很复杂的结构。
基于高可扩展性的软件架购,企业版使得企业能够通过高性能来解决大部分业务问题,并行处理大容量数据。
强大的企业元数据管理能力使得可以在数据整合生命周期中在所有工具中共享和使用工具。
DataStage企业版发布了四个核心功能来成功实施企业数据整合:先进的开发和维护;完整的开发环境;企业级实施和管理;高扩展的体系架构;端对端的企业级元数据管理。
1.1先进的开发和维护DataStage企业版提供了全面的功能去最优化用户在建立、升级和管理数据整合架构时的速度、灵活性和效率。
DataStage企业版增强的功能减少了学习的周期、简单化了管理和优化了开发资源的使用,减少了数据整合应用的开发和维护周期。
结果,DataStage企业版使得企业能够花更少的时间开发他们的整合应用,更多的时间是不断的从中受益。
DataStage企业版使用了Client-server架构,如下所示。
图一、DataState企业版Client-Server架构用户通过各个客户端工具访问DataStage企业版的开发、配置和维护功能。
这些工具包括:Designer:用来建立和编辑DataStage作业和表的定义。
Designer中的“JobSequencer”控制作业的执行,其他作业成功完成(或失败,等)的条件。
Administrator:用来执行管理任务,如建立DataStage用户、建立和删除工程并且建立清洗标准。
Manager:用来编辑管理用户工程的DataStage资料库。
Director:用来验证、时序安排、运行和监测企业版作业。
如图一所示,DataSage企业版的服务器组件运行在一系列的流行服务器上,如Unix、Windows 等。
1.2完整的开发环境用户使用DataStage企业版的Designer组件建立企业版数据整合应用。
企业版设计是基于数据流的概念。
数据流使得用户非常容易建立和理解应用。
用户在一个强大的图形化调色板上通过一系列的功能组件(Stage)标示数据集合的流程来构建一个数据整合应用。
一个完整的数据流图(DataStage 作业),从一个永久存储的数据源开始,并且执行一系列的增值转换和其他处理操作,最后加载数据到一个永久的存储。
但是,企业版Designer开始使用户可以灵活从任何地方可以建立作业:从上到下、从下到上、从中间开始。
一个完整的企业版数据流图如图二所示。
图二、DataStage企业版数据流图示在建立一个企业版数据流图表时,通过一系列的处理步骤对庞大的数据集合构架顺序流。
用户不需要担心如何在多处理器计算机上运行该应用。
企业版对数据整合应用工作流的顺序描述和在生产环境中应用的并行执行做了一个清晰的区分。
企业版处理数据集(dataset)。
数据集就是对通过数据流程的记录的收集。
一个数据集可以是屋里放置在磁盘上,也可以是虚拟放置在内存中。
数据在数据流中的Stage中移动使用的是虚拟的数据集,这样可以大大提高性能;分区(在后面介绍)是在Stage的属性中设置的。
企业版提供了多个内嵌的Stage来执行通用的数据整合任务,如Sort、Merge、join、filter、Transform和Aggregate。
更完整的内嵌Stage列表参考本文档的AppendixA。
每个企业版Stage是一个完整的功能组件,已经在多处理器系统中高吞吐量和高性能并行执行过。
这些Stage根除了为通常的数据处理应用进行编码的需要。
用户可以在企业版DesignerGUI中找到这些内嵌的Stage。
用户可以使用Stage的下拉菜单来这只Stage的参数。
企业版AggregatorStage的编辑器如下所示。
图三、企业版编辑AggregatorStage图标和Stage编辑器例子企业版TransformerStage是一个强大和灵活的组件,允许用户对inputlink输入的数据进行转换。
并且将数据传到另一个活动的Stage或者将数据写到目标数据或文件。
Transformer编辑器(如下所示)使得用户可以在inputlink和outputlink间简单建立mapping,并且可以使用BASIC等语言建立任意转换。
这些转换可以并行执行来提高吞吐量和性能。
企业版提供了超过100个内嵌的功能,另外可以用C或C++编写的route在转换中使用和进行互操作。
图四、企业版TransformerStage图标和Stage编辑器例子DataStage企业版内嵌的Stage包括高性能访问(加载和读)关系型数据库的强大组件,包括并行的关系型数据库。
例如,企业版的OracleStage提供了一个访问Oracle表的高性能并行接口。
OracleStage支持Load和Upsert写方式和支持表和查询的读方式。
企业版也可以利用DB2强大的数据库分区特性和Teradata的高性能、并行数据加载和导出。
另外,DataStage企业版提供了一些Stage可以使得SAS用户在大容量数据上执行SAS。
ParallelSASDataSetStage通过SASStage的连接从一个并行的SAS数据集中读取和写入数据。
通过利用并行硬件执行平台和并行关系型数据库,这些SASStage能够将大大增强需要进行处理和分析大数据量的SAS的吞吐量和性能。
企业版的内嵌扩展Stage提供了数据整合应用中80%到90%的最常用的逻辑需要。
另外,企业版提供了许多机制用来建立自定义的Stage:Wrapped--允许并行执行一个顺序程序。
Build――允许自动并行执行自定义Stage的C语言表达式。
Custom提供了完整的C++API,来开发复杂和扩展的Stage。
基于组件架构和扩展内嵌组件类库的DataStage企业版消除了对传统编码方式的需要,最大化了组件的重复使用。
对于可扩展的数据整合应用来说,企业版开放的和可扩展的架构使得整合第三方软件工具和已存在的程序更加容易。
Stage和作业的单独分区,包括每一个Stage的联合分区、元数据(表定义)和Transformer 转换定义,可以在共享容器(ShareContainer)中被其他用户重复使用。
共享容器允许用户提高产品性和在用户和工程间共享。
作业模板(JobTemplate)进一步提升了效率。
用户能够比以前更快地启用已定义好的模板。
同时,标准化的模板也提供给用户一个高效的起始点。
智能帮助提供建造从简单到复杂的作业。
用户通过一系列的询问,智能帮助可以象魔术师一样输出一个DataStage企业版作业或作业序列。
他们使用元数据智能提示用户答案和输出最后的结果。
Ascential载入一些智能助手,一个建立纬度缓慢变化(SlowChangingDimension)的星型架构(StarSchema)的数据库(类型1、2、3支持)。
1.3企业级实施和管理许多大的公司都有他们自己在复杂生产环境下的配置、时间序列、监测和管理应用的标准。
DataStage企业版提供了灵活功能来迎合这些需要。
首先,DataStage提供了一个图形化的作业顺序器(JobSequencer),允许用户定义作业执行的序列。
设计一个作业序列就象设计一个作业。
用户在DataStage中设计作业序列。
从工具条增加一个Activities(相对于Stage),并且通过Trigger进行连接用以定义控制流。
每个activity都有属性,可以在trigger表达式中测试并且传到序列前面的其他的activity中。
Activity也可以有参数,可以用来支持job参数或routine参数。
Job序列可以有自己的属性和参数,这些属性和参数可以顺序传到activity中。
序列也可以包括控制信息,例如,序列中job的成功或失败影响活动的走向。
一旦job序列被定义完成,可以在任何提供的接口(下面做详细的介绍)中建立时间顺序和执行。
图五、DataStageJob序列例子其次,企业版提供了Director和Manager的图形化功能。
象前面说过的,manager是用来管理工程的,包括导入和导出组件,用来将应用配置到产品。
Director用来建立时序,执行和监测job(或job序列)。
另外,企业版提供了command-line、API和webservices用来对应用进行配置、执行、监测和管理。
Job能够使用所有的工具进行开始、停止和监测。
可以提供所有的工具查看Job监测的详细内容-包括Director。
企业版返回的信息包括每个并行分区的记录条数、CPU使用率、开始/结束时间等。
所有的这些都是在单独的stage级别。
这个命令行接口是:dsjob–report<project><job>[<reporttype>]reporttype=BASIC,DETAIL,XML可通过XMLschema和XMLstylesheets对正在运行的job进行不同角度的查看。
就算job已经完成,这些信息仍然是可用的。
这就是operationalmetadata。
Commandline和webservice接口通过文本或XML方式返回出这些operationalmetadata。
对于国际数据的需要,DataStage企业版可以处理和管理multi-byte的数据结构。
客户端相应(如属性设置和表定义)可以使用用户本地的语言。
用户可以根据国际校正规则建立客户化的排序规则。
1.4高扩展的体系架构建立在高扩展软件架构上的企业版提供了高级别的吞吐量和性能。
象前面所描述的,用户可以使用企业版的Designer工具建立简单的顺序数据流图表。
当构架出顺序的数据流图表,用户不用担心底层的硬件架构和处理器的数量。
一个专门的配置文件可以定义这些底层多处理器计算环境中的资源(处理器、内存、磁盘)。
这个配置可以在顺序数据流图表和应用的并行执行之间建立一个清晰的分离。
这样就可以很简单开发扩展的数据整合系统并且并行执行(如图六所示)。
DataStage企业版可在管道并行和分区并行的机制下执行,这样可以获得高吞吐量和性能:数据管道(DataPipelining)意味着应用可以从源系统拉入数据并且在数据流图表中定义的顺序处理功能间移动。