Informatica Informatica powercenterpowercenter使用交流使用交流叶俊叶俊主要内容主要内容•ETL背景知识介绍•Informatica PowerCenter 框架介绍•客户端工具介绍•组件介绍•服务器端介绍主要内容•ETL背景知识介绍背景知识介绍•Informatica PowerCenter 框架介绍•客户端工具介绍•组件介绍•服务器端介绍ETL背景知识介绍•ETL的含义•ETL的主要功能ETL的含义•数据采集(ETL),即数据抽取(Extract)、转换(Transformation),清 洗(Cleansing)装载(Loading)的过程.•ETL就是对原有的、跨网络的、跨系统的数据进行提取、转换、加载,使它们成为有用数据并保存于数据库ETL的主要功能•数据抽取(data extract)•数据转换(data transform)•数据装载(data loading)数据抽取(data extract)•数据抽取功能是确定数据采集所涉及到的数据源并采集原始数据数据抽取通过不同的数据接口,实现从不同的网络、操作平台、数据库及数据格式和应用中抽取数据,并能通过对数据源的分析,抓取原始数据的元数据,为后续的数据转换等工作提供了基础。
数据转换(data transform)•数据转换包括数据的清洗和转换两部分功能数据的清洗要求对抽取来的原始数据进行有效性检查,对于数据项丢失或无效的记录和相似重复记录进行处理;数据转换则根据数据抽取时获取的元数据信息和目标数据仓库中表的元数据信息来对数据项进行转换,其中包括数据的合并、汇总、过滤、转换等数据转换功能保证了数据的正确性、一致性、完整性和可靠性,为后续的工作提供了数据支持数据转换(data transform)举例:滤掉不合法数据,进行数据表达方式的转化数据装载(data loading)•数据装载负责将数据按照目标数据库元数据定义的表结构装人数据仓库该功能是对经过清洗和转换的数据进行汇总、保存,以达到数据级整合的目的主要内容主要内容•ETL背景知识介绍•Informatica PowerCenter 框架介绍框架介绍•客户端工具介绍•组件介绍•服务器端介绍Informatica PowerCenter 框架介绍•PowerCenter框架介绍•PowerCenter相关概念解析133.Informatica PowerCenter 体系结构体系结构3.1体系架构图142 个Server:Informatica Repository Server:知识库Server,管理ETL 的元数据。
Informatica Server:ETL 引擎,读取存储在知识库中的Mapping和WorkFlow元数据,根据元数据规则实现ETL任务调度5 个Client:Repository Server Administrator Console:资料库的建立与维护Repository Manager:资料库管理,包括安全性管理等PowerCenter Designer:设计开发环境,定义源及目标数据结构;设 计转换规则,生成ETL 映射Workflow Manager:合理地实现复杂的ETL 工作流,基于时间、事 件的作业调度Workflow Monitor:监控Workflow 和Session 运行情况,生成日志和 报告3.Informatica PowerCenter 体系结构体系结构 3.2 工具介绍151.Repository Server Administration Console:创建repository(知识库),存储元数据2.Repository Manager :创建folder,存储元数据和管理知识库及其用户权限安全性管理3.Designer:定义Mappings,定义ETL规则4.WorkFlow Manager:创建Session,调度任务执行,管理日志及出错处理。
5.WorkFlow Monitor:监视任务执行,查看日志3.Informatica PowerCenter 体系结构体系结构 3.3设计流程163.Informatica PowerCenter 体系结构 1.Create repository2.Create Folder3.定义定义ETL 规则规则 Mappings4.定义定义Session WorkFlow5.调度查看日志调度查看日志3.3设计流程设计流程PowerCenter相关概念解析•Transformation•Mapping•Session•Task•WorkflowTransformationTransformation change the data they receive•Generate modify or pass data•Data passes into and out of transformations through ports that you link in a mappingMappingLogically Defines the ETL Process•Reads data from sources•Applies transformation logic to data•Write transformed data to targetsTaskAn executable set of actions,functions or commands•Session task runs a mapping•Command task runs a shell script•Email task sends an emailSession A session is a set of instructions that tells the Integration Service how and when to move data from sources to targets. A session is a type of task, similar to other tasks available in the Workflow Manager. In the Workflow Manager, you configure a session by creating a Session task. To run a session, you must first create a workflow to contain the Session task.SessionWorkflow•A collection of ordered task•Tasks can be linked sequentially,concurrently and/or combined•Links can be conditional on previous tasks completing主要内容主要内容•ETL背景知识介绍•Informatica PowerCenter 框架介绍•客户端工具介绍客户端工具介绍•组件介绍•服务器端介绍客户端工具介绍•Repository Manager•Designer •Workflow Manager•Workflow MonitorRepository Manager•连接已有的repository•加入新的repository(已存在)•查看已有工作区•创建新的工作区Designer•导入/创建数据源元数据•导入/创建目标数据元数据•制作ETL计算规则(Mappings)•调试Mappings•设置变量和参数 Workflow Manager•设置数据库联接•创建Mapping实例(session)•制作Workflow•实现ETL过程Workflow调度•运行(Start)•调度(Scheduler)设定调度时间频率Workflow Monitor•监控Workflow•查看结果–数据源和目标数据库的读出和写入情况–给出错误信息Workflow Monitor 中的中的状态状态 Stop – 停止 Task, Workflow, 或 WorkletAbort – 异常中断 task, workflow, 或 WorkletResume – 在修改了失败的Task后,在继续挂起的 Workflows Restart – 重新开始 Tasks, Workflows, 或Worklets 主要内容主要内容•ETL背景知识介绍•Informatica PowerCenter 框架介绍•客户端工具介绍•组件介绍组件介绍•服务器端介绍transformation组件介绍•Active(所有 input/output):表示该transformation可以改变通过它的数据的行数–Source Qualifier、 Aggregator、 Filter, Update , Router, Normalizer , Joiner,rank•Passive:表示该transformation不改变通过它的数据的行数–Lookup、 expression, Sequence GeneratorInformatica PowerCenter 提供了 多种数据转化组件:§Source Qualifier:从源表中查询出所有的数据(非XML)§XML Source Qualifier:从XML数据源中查询数据§Normalizer:从VSAM 或关系数据源中格式化记录§Expression:基于单行记录的表达式计算§Aggregator:基于多行记录的汇总计算 组件介绍组件介绍§Filter:执行条件过滤§Router:按照条件分组来过滤数据§Sorter:基于键字段进行排序§Update Strategy:允许逻辑的插入, 更新, 删除, 或拒绝§Lookup:查找相关的值并且传送给其他的对象§Joiner:关联异构数据源§Stored Procedure:调用存储过程并且获取返回值§Sequence Generator:产生一组唯一的序列id§Rank:取出最大或最小的一定数量的记录§Input:定义Mapplet的输入,仅在Mapplet designer中可用§Output:定义Mapplet的输出,仅在Mapplet designer中可用Source Qualifier•Source Qualifier组件组件 用来从源表或源文件中抽取数据,它可以用来转换源表的数据类型,方便PowerCenter之后的各种操作,另外还有过滤及关联源表的数据功能。
Filter•Filter组件组件 是用来过滤已经被PowerCenter 读取过来的数据,在需要过滤的数据上添加过滤条件,只有符合条件的才可以通过,与Source Qualifier不同的是,Filter还可以过滤的文本的数据但为了提高性能,需尽量在Source Qualifier 中将数据过滤掉Joiner•Joiner组件组件 通过关联条件关联两个数据源,一个Joiner只能关联两个表,可以关联异构数据源,但大量数据对内存要求也高,所以同构数据的关联应尽可能使用Source QualifierExpression•Expression组件组件 可以对节点进行表达式操作新增输出端口,编辑该端口的表达式,要进行列运算一般用Expression,,需要注意的是它不能作Sum, Avg 等汇总函数操作Lookup•Lookup组件组件 可以将代码表加载入内存,对表作查询,实现嵌套查询,可以针对文件操作,当对表的查询发生频繁时这样可以提高效率Aggregator•Aggregator 组件组件 执行分组聚合运算,可以对数据进行汇总,还能提供增量汇总、条件汇总等特殊的功能先选择所需分组的列,然后编写聚合表达式来实现分组聚合运算Normalizer•Normalizer 组件组件 格式化记录,这些记录可以是文本形式的Workflow task–Session – 执行mapping的指令–Command – 在工作流中指定运行 shell commands –Email – 在工作流中发送 email–:Decision决定Infromatica Server如何执行workflow–Assignment: workflow可以定义变量,用Assignment来设定变量值,然后用变量值控制workflow走向Workflow task§Timer :指定何时执行workflow的下一个任务§Control :控制workflow,如停止、中断等§Event Wait :等待一个事件的触发§Event Raise:触发一个用户定义的事件•配置源和目标以及lookup的数据库连接•可以在读取和写入的前后设定presql和postsqlTask ——Session TaskSession Task主要内容主要内容•ETL背景知识介绍•Informatica PowerCenter 框架介绍•客户端工具介绍•组件介绍•服务器端介绍服务器端介绍服务器端介绍服务器端介绍•服务器端组织关系•Domain•Service•Node•操作演示服务器端操作演示服务器端操作演示主要内容:Repository的备份与恢复Repository的备份Repository的恢复Thanks!!。