产品背景介绍
IBM InfoSphere DataStage 是业界主流的 ETL(Extract, Transform, Load) 工具,它使用了 Client-Server 架构,在服务器端存储所有的项目和元数据,并支持在多重数据结构中对大量数据进行收集、整合和转换。客户端 DataStage Designer 为整个 ETL 过程提供了一个图形化的开发环境,用户在 Designer 中对 DataStage Job 的进行设计和开发。DataStage 中提供了多个过程处理 Stage 来满足 ETL 的需要,然而 Transformer Stage 在这些 Stage 中用途和使用方法最为广泛,本文将对 Transformer Stage 在 ETL 过程中的用法及实现的功能做出详尽描述。本文中涉及到 IBM InfoSphere DataStage 为 IBM Information Server 8.0.1 版本。
Transformer Stage 组件介绍
Transformer Stage 在 DataStage 中是一个重要的,功能强大的组件,在 ETL 过程中,它承担“T”( 即数据的转化 ) 的责任。在 Transformer Stage 中可以指定数据的来源和目的地,匹配对应输入字段和输出字段,并指定转换规则和约束条件。
图 1. Transformer Stage 运用在 DataStage job 中的运用
图 2. Transformer Stage 列映射与字段表达式
Transformer Stage 在 DataStage job 中可实现的功能及案例分析
1. 字段转换
字段转换是 Transformer Stage 中最常见的一个功能,它能够将源数据根据一定的规格转换成为目标数据。下面将以 ETL 过程中比较常见的 Date 与 Timestamp 相互转换为例,说明字段转换的实现方式。
1.1 源数据类型为 Timestamp,目标类型为 Date
清单 1. 时间转换函数
TimestampToDate(in.ADD_DATE)
图 3. 字段转换表达式
图 4. 字段转换前后对比
查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Programming/extra/