没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
第一部分:
数据整合的核心内容是从数据源中抽取数据,然后对这些数据进行转化,最
终加载的目标数据库或者数据仓库中去,这也就是我们通常所说的 ETL 过程。
IBM WebSphere DataStage 为整个 ETL 过程提供了一个图形化的开发环境。
1、引言
传 统 的 数 据整合方 式 需 要 大 量 的 手 工 编 码 , 而 采 用 IBM WebSphere
DataStage 进行数据整合可以大大的减少手工编码的数量,而且更加容易维护。
数据整合的核心内容是从数据源中抽取数据,然后对这些数据进行转化,最终加
载的目标数据库或者数据仓库中去,这也就是我们通常所说的 ETL 过程。IBM
WebSphere DataStage 为整个 ETL 过程提供了一个图形化的开发环境。
本文将从以下几个方面来介绍 IBM WebSphere DataStage:
1. 数据源连接能力
2. 完备的开发环境
3. ETL Job 的并行执行能力
4. 开发一个简单的 ETL Job
2、出色的数据源连接能力
数据整合工具的数据源连接能力是非常重要的,这将直接决定它能够应用的
范围。IBM WebSphere DataStage 能够直接连接非常多的数据源,包括:
1、 文本文件
2、 XML 文件
3、 企业应用程序,比如 SAP、Siebel、Oracle 以及 PeopleSoft
4、 几乎所有的数据库系统,比如 DB2、Oracle、SQL Server、Informix 等
5、 Web services
6、 WebSphere MQ
正是因为这么好的连接能力,IBM WebSphere DataStage 使用户能够专注于
数据转换的逻辑而不用太担心数据的抽取和加载。
3、完备的开发环境
IBM WebSphere DataStage 的开发环境是基于 C/S 模式的,通过 DataStage
Client 连接到 DataStage Server 上进行开发。这里有一点需要注意,DataStage
Client 只能安装在 Windows 平台上面。而 DataStage Server 则支持多种平台,
比如 Windows、Redhat Linux、AIX、HP-UNIX。
DataStage Client 有四种客户端工具。分别是 DataStage Administrator、
DataStage Designer、DataStage Manager、DataStage Director。接下来首先介绍这
几种客户端工具在 DataStage 架构中所处的位置以及它们如何协同工作来开发
ETL Job 的,接着再分别详细介绍每个工具的功能。
图 1 描述了 IBM WebSphere DataStage 的整个系统架构。DataStage 的客户
端工具连接到 DataStage Server 上进行 ETL Job 的开发,DataStage Server 再与
后台的数据库连接起来进行数据处理。DataStage 的客户端工具之间的是一个相
互合作的关系。下面通过介绍 ETL Job 的开发过程来介绍他们之间的这种关系。
图 1:IBM WebSphere DataStage 架构图
3.1 ETL Job 开发流程
1. 用 DataStage Administrator 新建一个项目;
2. 用 DataStage Designer 连接到这个新建的项目上进行 ETL Job 的设计;
3. 用 DataStage Director 对设计好的 ETL Job 设置运行的模式,比如多长
时间运行一次 ETL Job;
4.用 DataStage Manager 进行 ETL Job 的备份等。
3.1.1 DataStage Administrator
DataStage Administrator 的主要功能有以下几个:
1. 设置客户端和服务器连接的最大时间。
以管理员的身份登陆 DataStage Administrator。你就会看到如下图所示的画
面。在这里你可以设置客户端和服务器的最大连接时间,默认的最大连接时间是
永不过期。最大连接时间的意思就是如果客户端和服务器的连接时间超过了最大
连接时间,那么客户端和服务器之间的连接将被强行断开。
2. 添加和删除项目
在 Projects 这个标签中,可以新建或者删除项目,以及设置已有项目的属
性。这里有必要介绍一下项目的概念,要用 DataStage 进行 ETL 的开发,首先
就要用 DataStage Administrator 新建一个项目,然后在这个项目里面进行 ETL
Job 的开发。
3. License 的管理
可以在 Licensing 标签中更新 License。
3.1.2 DataStage Designer
DataStage Designer 是 ETL Job 开发的核心环境。值得注意的是,登陆
DataStage Designer 的时候,不仅要指定 DataStage Server 的 IP,而且要指定连
接到这个 DataStage Server 上的哪个项目上面,上面已经提到 DataStage 的项目是
由 DataStage Administrator 来创建的。
DataStage Designer 的主要功能可以概括为以下三个方面:
1. ETL Job 的开发
DataStage Designer 里面包含了 DataStage 为 ETL 开发已经构建好的组件, 主
要分为两种,一种是用来连接数据源的组件,另一种是用来做数据转换的组件。
利用这些组件,开发人员可以通过图形化的方式进行 ETL Job 的开发。
2. ETL Job 的编译
开发好 ETL Job 后,可以直接在 DataStage Designer 里面进行编译。如果编译
不通过,编译器会帮助开发人员定位到出错的地方。
3. ETL Job 的执行
编译成功后,ETL Job 就可以执行了,在 DataStage Designer 里面可以运行 ETL
Job。ETL Job 的运行情况可以在 DataStage Director 中看到,这方面的内容将在介
绍 DataStage Director 的时候提到。
3.1.3 DataStage Manager
DataStage Manager 主要用来管理项目资源。
1.ETL Job 的备份
一个项目可能包含多个 ETL Job,可以用 DataStage Manager 把一个项目里面
的 ETL Job 导出来。然后再用 DataStage Manager 导入到另外一个项目中去,利用
这个功能一方面可以实现 ETL Job 的备份。
2.在多个项目间重复使用开发好的 ETL Job
另一方面就是可以在多个项 目之间来重复使 用开发好的 ETL Job。在
DataStage Manager 里面可以把数据库中的表结构直接导入到项目中来,供这个
项目中的所有 ETL Job 使用。DataStage Designer 也提供了从数据库中直接导入表
结构的功能。
3.1.4 DataStage Director
DataStage Director 主要有以下两个功能:
1. 监测 ETL Job 的运行状态
ETL Job 在 DataStage Designer 中编译好后,可以通过 DataStage Director 来运
行它。前面在介绍 DataStage Designer 的时候提到在 DataStage Designer 中也可以
运行 ETL Job,但是如果要监测 ETL Job 的运行情况还是要登陆到 DataStage
Director 中。在这里,你可以看到 ETL Job 运行的详细的日志文件,还可以查看一
些统计数据,比如 ETL Job 每秒所处理的数据量。
2. 设置何时运行 ETL Job
ETL Job 开发完成后,我们可能希望 ETL Job 在每天的某个时间都运行一次。
DataStage Director 为这种需求提供了解决方案。在 DataStage Director 中可以设置
在每天、每周或者每月的某个时间运行 ETL Job。
4、ETL Job 的并行执行能力
ETL Job 的并行执行是 IBM WebSphere DataStage 企业版的一大特色。ETL Job
开发好以后,可以在多台装有 DataStage Server 的机器上并行执行,这也是传统
的手工编码方式难以做到的。这样,DataStage 就可以充分利用硬件资源。而且,
当你的硬件资源升级的时候也不用修改已经开发好的 ETL Job,只需要修改一个
描述硬件资源的文件即可。并行执行能力是 DataStage 所能处理数据的速度可以
得到趋近于线性的扩展,轻松处理大量数据。
5、开发一个简单的 ETL Job
我们将要开发一个非常简单的 ETL Job,使大家对用 DataStage 进行 ETL 开发
有一个总体的认识。将要开发的 ETL Job 是把 DB2 数据库 Source 中的表 employee
的内容导入到另外一个 DB2 数据库 Target 中的表 employee 中去。其中两个数据
库中的 employee 表的结构是相同的。employee 表的结构为:
这里需要说明的是,DB2 数据库的 Client 端必须和 DataStage Server 装在同
一台机器上面。如果要连接的 DB2 数据库的 Server 和 DataStage Server 不在同一
台机器上面,那么就需要先用和 DataStage Server 装在同一台机器上的 DB2 的
Client 端提供的工具"配置助手"把要连接的数据库添加到 DB2 的 Client 端当中。
这就为 DataStage 连接该数据库做好了准备。另外一点需要注意的是,如果你的
DataStage Server 是安装在 Windows 上的,那么做完上面所描述的事情后就可以
用 DataStage 连接 DB2 数据库了,但是如果你的 DataStage Server 是安装在 Linux
或者 Unix 上面的,你还需要配置 DataStage 的一个名字叫 dsenv 文件。因为我
们的例子当中 DataStage Server 是运行在 Linux 上面的。我们将以 Linux 为例讲述
dsenv 文件的配置方法。
1. 配置 dsenv 文件(Linux 环境)
dsenv 文件是主要是用来存放环境变量的,这些环境变量包含了 DataStage
要用到的类库,以及要连接的数据库的安装的路径等。dsenv 文件位于位于文件
夹 $DataStage/DSEngine 里面,$DataStage/是 DataStage 的安装目录,例如:
/home/dsadm/Ascential/DataStage/。
打开 dsenv 文件,在文件的最后加上如下内容:
DB2DIR=/opt/IBM/DB2/V8.1;export DB2DIR
DB2INSTANCE=db2inst1; export DB2INSTANCE
INSTHOME=/home/db2inst1;export INSTHOME
PATH=$PATH:$INSTHOME/sqllib/bin:$INSTHOME/sqllib/adm:$INSTHOME/sqllib/misc
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INSTHOME/sqllib/lib;export
LD_LIBRARY_PATH
THREADS_FLAG=native;export THREADS_FLAG
这些环境变量用来描述 DB2 的安装路径、DB2 的实例、以及 DB2 类库的路
径。配置好这些环境变量后,我们就可以用 DataStage 连接 DB2 了。下面我们正
式进入开发环节。
2. 新建项目
(1)用 DataStage Administrator 登录到 DataStage Server。Host system 是安
装 DataStage Server 的主机,输入它的 IP 地址或者主机名。另外再输入用户名和
密码后,单击按钮"OK";
剩余71页未读,继续阅读
资源评论
kongshuguang
- 粉丝: 2
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功