Informatica - PowerCenter平台ETL开发规范(8)

2019-06-17 10:16

Informatica PowerCenter平台 ETL开发规范 1) 编写加载说明文档(包括MAPPING文档)

2) 开发初始与日常加载脚本 3) 测试初始与日常加载脚本 4) 编写测试报告

加载说明文档的模板和测试报告的模板因项目而异,格式可以参考每个项目具体的文档模板。 开发时最好以JOB为单位,由易到难,一个JOB结束以后再着手开发下一个JOB。当第一个JOB开发完成之后,由ETL相关负责人员确认文档、脚本等都没有问题以后,再进行下一个JOB的开发。

对于JOB的开发,实行“终身版权制”,在项目结束之前,只要开发人员还在项目中,其开发的JOB出现问题,开发人员拥有最终的解释权,并负责解决出现的问题。

9.2 文档编写要求

必须在文档中注明初始开发变人员与日期、每次变更的人员、变更内容及日期。

开发说明中既要详细说明每一步处理过程,也要概括说明总体的处理思路,用来和具体的处理步骤进行验证。

要说明源数据来自哪个地市、哪个源系统,数据转换的具体过程,包括对数据的所作的转换,所采用的具体方法等,说明对源数据所作的清洗。

10. 版本控制

虽然Informatica提供了Version Control功能,但其版本控制功能是以folder为单位的而不是以Mapping为单位,因此无法对单个mapping进行版本控制。基于这一点,不使用Informatica提供的version Control功能进行版本控制,而使用VAULT、SVN等进行版本控制。

以下是基于Informatica平台开发需要遵循的版本控制流程:

Page: 36 of 39

Informatica PowerCenter平台 ETL开发规范 从VAULT/SVN检出XML文件(加锁) 开发Mapping等对象 导出Mapping等对象到XML文件 将XML文件提交到VALUT/SVN(释放锁)

11. ETL程序迁移

使用Informatica Repository Manager导入和导出功能进行ETL程序迁移,需要检查的项目详见以下文档:

Informatica上线检查清单.xls

在进行程序发布时,当设计到程序覆盖时,需要注意:

? Mapping改动后,可以直接覆盖,但需要检查引用到它的Session是否失效,如果失效,应进

行Validate。

? Mapping覆盖时,注意其中包括的Seq值,不能覆盖目标。

Page: 37 of 39

Informatica PowerCenter平台 ETL开发规范 ? 公用模块、Source、Target的导入,将会影响到引用到它们的所有对象(将会造成大部分对

象失效),所以需要特别谨慎。如果确认需要导入,则在导入后,需要进入系统,找出所有失效对象,进行Validate。

? 一般不需要覆盖的对象,在导入时选择Reuse。 ? 新发布的Mapping,需要将其Seq的初始值改为1。

12. 开发建议

12.1 Source Qualifier

SELECT端口只能为源端口,不得使用SQL函数。 可以写JOIN、WHERE、ORDER BY子句。

保持SQL语句简洁,Mapping中不出现复杂SQL,而是通过Transformation实现。

12.2 Mapping

Mapping保持简洁,一个Mapping只针对一个目标表

12.3 Mapplet

可以重用的转换逻辑放到Mapplet中实现,并添加描述信息。如可供其它开发者使用,通知管理员移至共享文件夹。

12.4 Expression

Expression转换提供了本地变量功能,可以跨行引用数据,在做分区分组处理时非常方便。 使用时需遵循端口顺序: Input ports Variable ports Output ports

本地变量:在引用端口时被引用者仍未被填充,该引用变量的值为上一条数据的值。 所以本地变量端口要放在被引用端口之上,数据流入之前要排序。

本地变量用途:汇总,分区分组汇总,累计,去除重复记录,分区分组标记序号,等等,而且相比rank,aggregator,lookup等有性能优势(需要具体实际测试)。

12.5 Lookup

Lookup有连接和非连接的区别,也有Dynamic和Static的区别(需要研究)。

Page: 38 of 39

Informatica PowerCenter平台 ETL开发规范 Lookup SQL override用途

源和目标发生变化重新导入时,需要特别注意Lookup中是否更新。

12.6 Update Strategy

每个Update Strategy的表达式中最好只包含DD_INSERT、DD_UPDATE、DD_DELETE、DD_REJECT四种标识中的一种,而使用Router分流,INSERT和UPDATE通过不同的PIPELINE进行,以提高性能。

Page: 39 of 39


Informatica - PowerCenter平台ETL开发规范(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2017新教材苏教版二年级数学下册全册教案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: