Informatica Update 机制详解

转载 2007年10月12日 09:34:00

Informatica 作为ETL工具,Update是其很重要的一个特性。也正因为如此,我们会发现在Informatica工具的很多地方都会有Update的相关设置,许多时候给大家都造成了很大的迷惑,不知道谁先谁后,谁的优先级高,或者具体的作用是什么,希望能借此文给大家一个清晰的概念。

       Informatica Update过程简单说,就是给每条数据设置一个Delete,Insert,Update或者Reject的标志的过程,我们统称为设置更新标志位的过程,最终调度程序将根据标志位来进行具体的更新操作执行。以下根据标志的设置顺序进行详细说明。
  1. Init
      对于任何一个Mapping的每一条数据, 初始默认标志为Insert。即在整个过程中,如果没有任何更改标志位的操作,这条数据将作Insert操作。
  1. Mapping中使用了Update Strategy
当在Mapping中使用了Update Strategy时,则根据DD_UPDATE,
DD_INSERT, DD_DELETE等可以将更新标志位的值由Insert更改为Update,Insert,Delete等。
  1. Treat Source Rows As
 
        Session属性设置里,通过设置Treat Source Rows As 的值,可以再一次对标志位进行更新,也就是说无论Mapping里设置了何种更新标志,在此,又可以进行一次更改。如果选择了Insert,Update, Delete三种方式,则无论在Mapping中如何修改更新标志位,在此将统一全部更改为Insert,Update,Delete。选择Data Driven时,系统将不对标志位做任何修改,维持原来的标志位值。
  1. Target Properties
最后一个对更新产生影响的地方,即是Target的属性设置。
       它的最初默认设置即是图中所示,Insert, Update as Update, Delete三个选项被选中。这儿就是我们所说的最终调度执行的依据。默认的3个选中选项,表明当Session运行的时候,碰到Insert标志的,即做Insert操作, 碰到Update标志的即做Update操作,碰到Delete标志的就做Delete操作。当然, 我们可以把钩取消掉,这样Informatica运行时,碰到相应标志的数据,将不做任何操作。例如,把Insert的钩取消掉,那Session运行过程中,将对所有标记为Insert的数据不做任何操作。
        这儿需要特别解释的便是Update的方式,它具有三种方式可以选择。在此将对这3种方式,做一个详细的说明。
        首先,需要特别说明的是,这3种方式是互斥的,即同时只能选中一个。
Update as Update : 对于所有被标记为Update的数据,进行Update操作
Update as Insert:    对于所有被标记为Update的数据,全部进行Insert操
                                     作,不做Update操作
Update else Insert: 对于所有被标记为Update的数据,先做Update操作,
                         然后对没有Update成功的数据,再进行Insert操作。
例如:
                            
         假设这3条数据在前面所述步骤中被设置为Update标志, 而我们的Target Properties设置为Update Else Insert,此时的Informatica将如何运行呢。
 数据1,2,3将首先进行Update操作,而1,2根据主键找到了相应的数据进行Update,而3则没有找到,Update失败,然后对于3, Informatica将采取Insert方式进行操作,最终结果便是
                             
最后我们可以用一个图来说明Informatica整个更新的过程:
 
     在初始化时,我们的更新标志都被默认设为Insert,而其中第二和第三步都可以对标志位进行更改,也就是说前面的所有3个步骤就是一个标志位的设置过程。

 最后一步,则是具体的执行操作。根据设置的不同,执行的过程会采取几种不同的方式执行 .

 

关于Informatica的使用(转载)

转自 http://hexm008.blog.163.com/blog/static/1647460802010112354151766/   1. INFORMATICA CLIE...
  • belovedmilan
  • belovedmilan
  • 2013年11月09日 20:00
  • 2686

Informatica PowerCenter 架构、组件及开发步骤(转PPT)

【Informatica PowerCenter应用架构】 【PowerCenter Server和数据移动】 【PowerCenter产品组件】 ...
  • kk185800961
  • kk185800961
  • 2013年01月20日 10:52
  • 4730

Informatica批量导出对象成xml文件

#!/bin/bash # ----------------------------------------------------------------------- # Script Nam...
  • sun120204535
  • sun120204535
  • 2017年06月22日 09:10
  • 695

Informatica 初学日记全(转载)

1. INFORMATICA CLIENT的使用 1.1 Repository Manager 的使用 1.1.1 创建Repository。 前提: a. 在ODBC数据源管理器中新建一...
  • u010398265
  • u010398265
  • 2016年09月23日 16:18
  • 1762

Informatica基础系列(外)——不支持 MySQL Community 版本的解决方案

Informatica Power Center 是一个 ETL 工具,提供强大的数据集成软件和服务,一般用于大数据的抽取、转换、加载,常应用于数据仓库、BI 等领域,并支持各种主流的数据源,如 Or...
  • water_0815
  • water_0815
  • 2017年05月13日 17:03
  • 1160

(转)informatica 面试题大全

1 What is the difference between a data warehouse and a data mart? Ø Dataware house: It is a colle...
  • hellojoy
  • hellojoy
  • 2015年07月07日 12:55
  • 1193

关于InInformatica主要产品简介

InInformatica主要产品简介编辑 Informatica Enterprise Data Integration包括Informatica PowerCenter和Informatic...
  • woqiang68
  • woqiang68
  • 2015年05月27日 11:44
  • 1385

Informatica的下载安装和配置

本文主要讲解从下载,安装到配置,直至可以愉快进行Mapping开发的整个过程的一些简要说明。...
  • u011031430
  • u011031430
  • 2017年07月27日 00:21
  • 1886

informatica 在抽取EXCEL中遇到问题及INFA售后给出的建议。

作者:lianghc 1.测试环境: 服务器: 操作系统:windows server 2008 R2 Enterprise (X64) Informatica版本:9.6.1 hotfix1 (...
  • you_xian
  • you_xian
  • 2015年05月29日 14:32
  • 2032

informatica 基本组件使用说明

http://blog.itpub.net/29144194/viewspace-1141535/ 1. INFORMATICA CLIENT的使用 1.1 Repository Manager ...
  • xiadingling
  • xiadingling
  • 2016年01月05日 11:53
  • 5419
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Informatica Update 机制详解
举报原因:
原因补充:

(最多只允许输入30个字)