ETL介绍
ETL:Extract-Transform-Load 的缩写,数据抽取(Extract)、转换(Transform)、装载(Load)的过程。
PowerCenter Designer:设计开发环境,定义源及目标数据结构,设计转换规则生成ETL映射。
Workflow Manager:合理实现复杂的ETL工作流,基于时间、事件的作业调度。
Repository Manager:资料库管理,包括安全性管理。如:元数据查找,用户、组、权限管理等。
Repository Server Administrator Console:对知识库的操作,如:知识库创建、备份、恢复等。

ETL开发规范文档
通过infra 视图查看警告

Informatica使用介绍
Informatica提供基于对象的,无需编码的全图形化开发环境,最大化提高开发生产力,有5个客户端工具:

安装
选择客户端安装

客户端改为英文

  1. 关闭所有客户端窗口

  2. 将$INFA_HOME\\clients\\PowerCenterClient\\client\\bin
    (如D:\\Informatica\\9.5.1\\clients\\PowerCenterClient\\client\\bin)下的*_zh.res and *804.dll文件移走或删除.
    64位操作系统默认是英文。

  3. 重启客户端

  4. 客户端改成英文后,将所有在中文环境下开发的对象导出后再导入,将会产生如类似下面的错误

解决方法:编辑 _output_file,将“分区编号”替换为”Partition #”后保存,然后再执行导入操作。

配置域
打开 Power Centor RepositoryManager,在打开的的页面上选择:Power Centor RepositoryManagerConfigure Domain

输入Domain的信息:

在出现的Repository前面打勾,选择OK完成配置

Dev domain 信息:
Domain Name:Domain_cnsz03vl0261
Gateway Host:10.202.4.152
Gateway Port:6005
用户名/密码:CCS5_CCS5/ CCS5_CCS5
ETL库信息:
10.202.4.50:3306/etlmgr
CCS5ETL/CCS5ETL(大小写敏感)

Uat domain 信息:
Domain Name:Domain_infasita
Gateway Host:informatica-sita1.sit.sf-express.com 6005
Gateway Port:6005
Informatica用户名/密码:CCS5_ccs5/ CCS5_ccs5
ETL库信息:
10.202.44.65:3306/etlmgr
ccs5etl/ccs5etl

Designer
双击 Rep_infadev (存储库),输入用户名,密码(注:用户名和密码严格区分大小写),根据dba要求申请对应系统的用户信息填写,点击链接按钮

进入一下页面,根据申请的权限选择自己所属的文件夹(在ETL申请过程中,本文件夹有dba负责统一创建);

右键选择打开自己所属的文件夹

打开后注意红色表明处,是否一致(确认当前操作的是自己的文件夹)

配置源对象
创建源,选择从数据库导入

根据ODBC创建数据源

添加数据源

选择本机安装的Oracel 版本驱动

输入数据来源库的信息

Data Source Name 根据ETL开发规范文档命名,输入完成后,test Connection 是否成功,点击ok 完成

确认是否有成功添加用户数据源,确定

选择刚刚添加的数据源

输入数据来源库的用户信息,点击连接

根据需求选择数据来源库中对应的表,如:指定表名搜索

确定

选中自己的目录,右键选择链接,后在右键打开

配置目标对象
完成数据来源表后,创建目标数据源(目标数据库中必须存在相同表结构的目标表),选择 target Designer 按钮

选择目标菜单,从数据库导入

目标数据源添加,请参照上面步骤(在数据库信息中根据目标库填写)

添加完成后,选择目标库中的表

完成目标数据源创建

配置映射关系
选择 mapping Designer,根据M_CJT001根据ETL设计场景文档选择 复制(CTRL+C、CTRL+V)

根据ETL开发规范文档命名,右键打开创建的映射,删除里面原有的映射

选择源,拖到右边灰色底纹窗口中

按照ETL开发规范文档命名,确定

在空白处鼠标右键,选择全部排列

选择目标,拖到右边灰色底纹窗口中

在空白处鼠标右键,选择自动链接

选择,转换源和转换目标,确定

完成mapping 映射,一定要保存好,以上每一步的成果(常按ctrl+s好习惯)

Workflow Manager
切换到工作流视图 workflow Manager

进入工作流视图

创建sesssion
根据官方提供的工作流模板创建自己的工作流,选择WF_for_copy,拖到自己工作流目录下

勾选重命名,编辑,输入工作流名称按照ETL开发规范文档命名

完成

打开工作流

创建会话,点击 会话按钮,在工作流程视图中空白处点击就Ok了。

选择对应的mapping 映射,确定

使用链接线

双击会话图标,此处选择任务需要重命名(参照ETL开发规范中的命名规范)

配置session
选择属性tab :(详细参数说明与配置ETL参照ETL开发规范必要的session属性设置)
Session Log File Name:参照ETL开发规范中的命名规范
Parameter Filename :PMRootDir/BWParam/PMRootDir/BWParam/PMRootDir/BWParam/$PARAM_FILE (固定值)

选择映射源,在关系中选择源表的数据连接,点击 按钮

选择源数据表链接,在此之前必须先配置好连接关系(目标库、源库)。

新建

名称根据 ETL研发规范文档命名,代码页必须和目标库的编码一致,避免出现乱码,连接字符串填写源数据库的(本字符串由dba提供,在ETL相关权限申请的时候由dba根据我们需求的源数据库和目标数据库在Informatica 服务端配置的tnsanme.ora字符串),相同的步骤创建目标关系连接

目标库

回到工作流视图,继续从“双击会话图标”步骤

进入关系连接配置,选择源数据关系连接,目标数据关系连接

输入 Source Filter 信息,根据数据来源库填写

填写目标数据连接关系,

Target load type 必须选Normal ,根据需求如需要在同步数之前先truncate 目标表请勾选

目标表:owner.tableName,(表所有者.表名)
TARGETOWNER.TARGET_OWNER.TARGETO​WNER.TARGET_TABLE

源,目标设置好会话以后,进入验证阶段。
选择start 、session 节点右键验证。

确认验证结果

验证通过后,在工作流空白右键,选择启动工作流

Workflow Monitor
自动打开Monitor窗口,在窗口中查看自己启动的工作流任务。(次窗口显示的是ETL中所有正在运行的工作流)

如甘特图没有找到自己的工作流任务,则到任务视图窗口查看日志

选择最近一次运行记录,右键选择获取工作流日志

在此窗口中查看详细错误日志,如:本错误有两个问题
A、 是在连接对象定义中的连接字符串参数配置错误引起的。
B、 Parameter Filename :PMRootDir/BWParam/PMRootDir/BWParam/PMRootDir/BWParam/$PARAM_FILE,该配置需要配合其他功能一起使用

成功运行查看

根据需求,设置本工作流执行和调度时间,选择工作流菜单,计划程序

新建

根据需求命名,说明等

本实例:从12:00开始,每隔1分钟执行一次,确定,回到工作流程视图窗口,保存

在工作流视图空白处右键选择编辑工作流/工作集菜单

在编辑工作流界面编写写注释信息后选择计划程序tab界面

选择可重用,点击计划程序按钮,在计提查询流程查看选择刚刚创建的计划程序

完成计划设置后,保存
回到工作流程视图,空白处右键选择启动工作流

回到Monitor监控窗口,查看是否按照定制时间执行工作流程任务

基于某个字段增量同步
基于某个字段增量Merge,根据官方提供的预定义场景复制实现(预定义场景请参照Informatica觉见场景设计v03文档)
选择M_CJT004

重命名mapping,根据ETL开发规范文档,下一步,完成,选择刚刚创建的mapping,右键打开,将预定义的创建的Mapping 删除

将源和目标拖到mapping 工作空间

创建查找转换表,点击 按钮,在mapping工作空间空白处点击,弹出一下窗口,选择目标,找到目标表(lookeup是根据数据源表的主键值到目标表中查询,来决定当前记录修改或新增)

双击查找转换表,

设置端口,删除非主键的端口,新增一个S_+目标表ID列名,数据类型,IOL列

设置源、目标关联条件,点击 按钮新增

回到Mapping 视图,双击

条件输入根据增量需求,参照Informatica觉见场景设计v03.docx文档

创建更新策略,点击 按钮,在Mapping视图窗口空白处点击。

将源和增量相关策略字段关联

设置更新策略

建立主键关系

空白处右键选择

选择转换源,转换目标

保存,按照上述工作流程描述的步骤完成。祝你成功!
添加运行日志:
创建ETL相关数据库用户和表

保证自己目录下有以下两个mapping 文件

回到工作流视图窗口(workflow)

创建日志需要的会话

双击pre_S会话:

双击post_S会话,设置

设置源和目标连接

连接

双击最初创建的任务会话,条件日志参数

双击 设置参数

模板

根据模板设置日志参数表ETLMGR.ETL_INCR_PARAM,将此记录添加到该表中

登陆到:etlmgr用户下,查看日志ETL_INCR_PARAM、ETL_RUN_LOG

祝你功德圆满,可下山了

导入
1、运行Informatica PowerCenter Repository Manager,并连接存储库

2、获取 文件

3、执行脚本
在etl_incr_param表中增加必要配置(检查etl_incr_param.TARGET_OWNER等是否正确)

4、Repository > Import s,导入 文件

选择以上获取的 文件:

添加需要导入的文件夹:

根据实际情况,修改目标文件夹:

导入时若提示存在冲突,则可以在左侧选中项,然后勾选Reuse复选框,点击Next。直到所有冲突都解决:

5、导入成功后打开Informatica PowerCenter Workflow Manager启动workflow
在列表中找到正确的项目文件夹并打开workflow:

验证表属主和表名

启动Workflow:

注:若提示workflow没有intergration service,则可以编辑workflow,进行设置:

此外,可以在ETL数据库中检查数据是否导入:
SELECT * FROM etlmgr.etl_run_log t ORDER BY t.START_TIME DESC;

常见问题

参考资料
程序:\\SF00449631A\\Infomatic_Client_Installer_win32-x86
文档:\\SF00449631A\\Infomatic常用文档

收藏 打印