### PowerCenter ETL工具知识点详解 #### 一、PowerCenter ETL工具简介 PowerCenter是一款由Informatica公司开发的企业级ETL(Extract, Transform, Load)工具,它可以帮助企业高效地进行数据集成工作。PowerCenter提供了强大的数据抽取、转换及加载功能,并且支持多种数据源与目标系统之间的数据迁移。 #### 二、核心组件与功能 ##### 2.1 Source Qualifier(数据源编辑器) - **功能说明**: - 连接相同来源的数据集。 - 过滤源数据。 - 指定连接条件(例如等连、非等连、like等)和类型(内连、外连等)。 - 指定排序字段以优化性能(尤其在Mapping中使用Aggregator或Joiner时)。 - 实现去重(Distinct)功能。 - 覆盖(Override)SELECT语句。 - **数据类型转换**: - Source Qualifier负责将数据库中的数据类型转换为PowerCenter支持的数据类型。 - **目标装载顺序**: - 当Mapping中有多个Source Qualifier连接到多个Target时,可通过Target Load Order来定义装载顺序。 - **使用参数或变量**: - 在Source Qualifier中可以使用参数或变量来传入SQL语句。 - **属性覆盖**: - 多数属性可以在Session属性中被覆盖,如Join、Filter、Sorted Ports等。 - **SQL查询优先级**: - SQL Query具有最高优先级,如果存在SQL Query,则会根据其结果生成相应的端口,同时确保SQL Query中Select的字段数量与端口数量一致。 - 如果需要从多个schema读取数据,可以通过SQL Query的PreSQL和PostSQL来实现。 ##### 2.2 Update Strategy(更新策略) - **Mapping中的Update Strategy**: - 用于标识数据行的行为,如Insert、Update、Delete或Reject。 - **Session中的配置**: - 设置如何处理源行(Treat source row as属性),可选择Insert、Update、Delete或Data driven。 - 配置Target属性,如Insert、Update[asUpdate]、[asInsert]、[else Insert]、Delete或Truncate Target Table选项。 - **Update Strategy Expression**: - 可以输入常量或数字值来指定每行的更新策略,支持IIF或DECODE函数构建逻辑表达式。 - **处理被拒绝的行**: - 勾选Forward Rejected Rows时,被拒绝的行将保存到对应的Reject文件中;若未勾选,则可能写入Session Log中,具体取决于当前Transformation的Tracing Level设置。 ##### 2.3 Expression Transformation(表达式转换) - **功能**: - 执行单行计算,可以在表达式中使用输入端口、输入/输出端口、函数、非连接的Lookup以及变量端口。 - **数据来源限制**: - 数据来源只能来自单一的Transformation。 ##### 2.4 Lookup Transformation(查找转换) - **功能**: - 根据输入值从数据库或平面文件中查找数据。 - **分类**: - 连接型:可以传输多个返回值给其他Transformation。 - 非连接型:只有一个返回端口,在表达式中使用Lookup函数(:LKP())调用。 - **特点**: - 连接型可以利用默认值,非连接型在无匹配记录时返回空。 - **CACHE配置**: - Lookup可以配置使用CACHE,对于平面文件这是必需的。Informatica Server会在条件列上建立索引CACHE,在其他列上建立数据CACHE。 - CACHE文件可以是临时的,也可以是永久的。 - **动态Lookup**: - 当Lookup配置为动态时,对应的表被视为Target。如果输入行连接列在CACHE中找不到匹配记录,则在CACHE中插入新行;如果找到则更新CACHE或保持不变,这取决于比较列是否匹配,并通过标志列NewLookupRow赋值0(未更改)、1(插入)或2(更新)。 #### 三、总结 通过对PowerCenter ETL工具的核心组件——Source Qualifier、Update Strategy、Expression Transformation以及Lookup Transformation的详细介绍,我们可以了解到这些组件各自的特点及其在数据集成过程中的重要作用。熟练掌握这些组件的功能与使用方法,能够帮助企业更高效地完成数据处理任务。
- lieren21742013-10-10还行吧,不过我看不太懂。
- kwame1232015-10-14资料整体不错,如果能有更多的实际例子就更好了,谢谢楼主分享
- 粉丝: 3
- 资源: 35
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助