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 Job

Server Job 简单而强大,适合快速开发 ETL 流程。Parallel Job 与 Server Job 的不同点在于其提供了并行机制,在支持多节点的情况下可以迅速提高数据处理效率。Parallel Job 中包含更多的 Stage 并用于不同的需求,每种 Stage 使用上的限制也往往大于 Server Job。

Sequence Job

Sequence 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 Job

Server Job 中的 Stage 综述

Stage 是构成 Datastage Job 的基本元素,在 Server Job 中,Stage 可分为以下五种: 1. 2. 3. 4. 5.

General Database File

Processing Real Time

本节中将介绍如何使用 Datastage 开发一个 Server Job。如图 1 所示:

图 1. Server Job

点击查看大图

Sequential File Stage

Sequential File Stage 可用来从一个 Sequential 文件中获取源数据或将数据加载到一个 Sequential 文件中。在使用 Sequential File Stage 时需要指定文件的路径和名称,文件的格式,列的定义和文件写入的类型(覆盖或追加)。

图 2. Sequential File 属性框