informatica transformations

Upload: ganeshjavvadi

Post on 03-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 Informatica Transformations

    1/255

    Introduction

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    2/255

    By the end of this course you will:

    Understand how to use the major PowerCentercomponents for development

    Be able to build basic ETL mappings and mapplets*

    Course Objectives

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    e a e o crea e, run an mon or wor ows

    Understand available options for loading target data

    Be able to troubleshoot most problems

    * A mapplet is a subset of a mapping

  • 7/29/2019 Informatica Transformations

    3/255

  • 7/29/2019 Informatica Transformations

    4/255

    Informatica Products

    PowerCenter ETL batch and real-time data integration

    PowerAnalyzer BI reporting web-browser interface with reports,

    dashboards, indicators, alerts; handles real-time

    metricsSu erGlue* Centralized metadata browsin cross-enter rise

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    including PowerCenter, PowerAnalyzer, DBMS,

    BI tools, and data modeling tools

    PowerExchange Data access to mainframe, mid-size system and

    complex files

    PowerCenter

    Connect products

    Data access to transactional applications and

    real-time services

    * Uses PowerCenter to extract metadata and PowerAnalyzer to display reports

  • 7/29/2019 Informatica Transformations

    5/255

    www.informatica.com provides information (under Services) on:

    Professional Services

    Education Services

    my.informatica.com sign up to access:

    Technical Support

    Product documentation (under Tools online documentation)

    Informatica Resources

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Velocity Methodology (under Services)

    Knowledgebase

    Webzine

    Mapping templates

    devnet.informatica.com sign up for Informatica Developers Network

    Discussion forums

    Web seminars

    Technical papers

  • 7/29/2019 Informatica Transformations

    6/255

    Informatica offers three distinct Certification titles:

    Exam A: Architecture and Administration Exam C: Advanced Administration

    Informatica Professional Certification

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Exam B: Mapping Design Exam D: Advanced Mapping Design

    Exams A, B, C, D plus Exam E: Enablement Technologies

    For more information and to register to take an exam:http://www.informatica.com/services/Education+Services/Professional+Certification/

    http://www.informatica.com/services/Education+Services/Professional+Certification/http://www.informatica.com/services/Education+Services/Professional+Certification/
  • 7/29/2019 Informatica Transformations

    7/255

    Extract, Transform and Load

    Transaction level data

    Operational Systems

    MainframeRDBMS Other

    Aggregated data

    Decision Support

    Data

    Warehouse

    Aggregate data

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Optimized for transaction

    response time

    Current

    Normalized or

    De-normalized data

    Historical data

    ETL Load

    Transform

    Extract

    C eanse ata

    Consolidate data

    Apply business rules

    De-normalize data

  • 7/29/2019 Informatica Transformations

    8/255

  • 7/29/2019 Informatica Transformations

    9/255

  • 7/29/2019 Informatica Transformations

    10/255

  • 7/29/2019 Informatica Transformations

    11/255

    1. Source Object Definitions

    By the end of this section you will:

    Be familiar with the Designer interface

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Be able to create Source Definitions Understand Source Definition properties

    Be able to use the Data Preview option

  • 7/29/2019 Informatica Transformations

    12/255

    Import from:- Relational database- Flat file- XML object

    Create manually

    Methods of Analyzing SourcesSource Analyzer

    Repository

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Repository

    Server

    Repository Agent

    TCP/IP

    Native

  • 7/29/2019 Informatica Transformations

    13/255

    Analyzing Relational Database Sources

    Table

    View

    Synonym

    Relational DB Source

    DEF

    Source Analyzer

    ODBC

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Repository

    Server

    Repository Agent

    TCP/IP

    DEF

    Native

  • 7/29/2019 Informatica Transformations

    14/255

    Analyzing Relational Database

    SourcesEditing Source Definition Properties

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    15/255

    Analyzing Flat File Sources

    Mapped Drive

    NFS Mount

    Local Directory DEF

    Fixed Width Delimited

    Flat FileSource Analyzer

    Re ositor

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Repository

    Server

    Repository Agent

    TCP/IP

    DEF

    Native

  • 7/29/2019 Informatica Transformations

    16/255

    Flat File Wizard

    Three-step wizard

    Columns can be

    renamed within

    wizard

    Text, Numeric and

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    are supported

    Wizard guesses

    datatype

  • 7/29/2019 Informatica Transformations

    17/255

    Flat File Source Properties

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    18/255

    Data Previewer

    Preview data in Relational database sources

    Flat file sources

    Relational database targets Flat file tar ets

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Data Preview Option is available in Source Analyzer

    Warehouse Designer

    Mapping Designer Mapplet Designer

  • 7/29/2019 Informatica Transformations

    19/255

  • 7/29/2019 Informatica Transformations

    20/255

    Using Data Previewer in Source

    AnalyzerData Preview Results

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Data

    Display

    View up to

    500 rows

  • 7/29/2019 Informatica Transformations

    21/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    22/255

    2. Target Object Definitions

    By the end of this section you will:

    Be familiar with Target Definition types

    Know the supported methods of creating

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Target Definition

    Understand individual Target Definition

    properties

  • 7/29/2019 Informatica Transformations

    23/255

    Creating Target Definitions

    Methods of creating Target Definitions

    Import from relational database

    Import from XML object

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Create manually (flat file or relationaldatabase)

  • 7/29/2019 Informatica Transformations

    24/255

    Creating Target Automatically from

    SourceDrag-and-drop a

    Source Definition

    into the

    Warehouse

    Designer

    Workspace

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    25/255

    Target Definition Properties

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    26/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    27/255

    3. Mappings

    By the end of this section you will be familiar with:

    The Mapping Designer interface

    Transformation objects and views

    Source Qualifier transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    The Expression transformation

    Mapping validation

  • 7/29/2019 Informatica Transformations

    28/255

    Mapping Designer

    Mapping List

    Transformation Toolbar

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Iconized Mapping

  • 7/29/2019 Informatica Transformations

    29/255

    Transformations Objects Used in This

    ClassSource Qualifier: reads data from flat file & relational sourcesExpression: performs row-level calculations

    Filter: drops rows conditionally

    Sorter: sorts data

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    ggrega or: per orms aggrega e ca cu a ons

    Joiner: joins heterogeneous sources

    Lookup: looks up values and passes them to other objects

    Update Strategy: tags rows for insert, update, delete, rejectRouter: splits rows conditionally

    Sequence Generator: generates unique ID values

  • 7/29/2019 Informatica Transformations

    30/255

    Other Transformation Objects

    Normalizer: normalizes records from relational or VSAM sources

    Rank: filters the top or bottom range of records

    Union: merges data from multiple pipelines into one pipeline

    Transaction Control: allows user-defined commits

    Stored Procedure: calls a database stored procedure

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    External Procedure : calls compiled code for each row

    Custom: calls compiled code for multiple rows

    Midstream XML Parser: reads XML from database table or message queue

    Midstream XML Generator: writes XML to database table or message queue

    More Source Qualifiers: read from XML, message queues and applications

  • 7/29/2019 Informatica Transformations

    31/255

    Transformation Views

    A transformation has

    three views:

    Iconized shows the

    transformation in relationto the rest of the ma in

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Normal shows the flow

    of data through the

    transformation

    Edit shows

    transformation ports(= table columns)

    and properties;

    allows editing

  • 7/29/2019 Informatica Transformations

    32/255

    Source Qualifier Transformation

    Ports All input/output

    Represents the source record set queried by the Server.

    Mandatory in Mappings using relational or flat file sources

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Convert datatypes

    For relational sources:

    Modify SQL statement

    User Defined Join

    Source Filter

    Sorted portsSelect DISTINCT

    Pre/Post SQL

  • 7/29/2019 Informatica Transformations

    33/255

    Informatica Functions Character

    Character Functions

    Used to manipulate character data

    CHRCODE returns the numeric value (ASCII or

    Unicode) of the first character of the string

    passed to this function

    ASCII

    CHR

    CHRCODE

    CONCAT

    INITCAP

    INSTR

    LENGTHLOWER

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    s or ac war compa y on y. se

    || insteadLPAD

    LTRIM

    REPLACECHR

    REPLACESTR

    RPAD

    RTRIM

    SUBSTRUPPER

  • 7/29/2019 Informatica Transformations

    34/255

    TO_CHAR (numeric)

    TO_DATE

    Informatica Functions Conversion

    Conversion Functions

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    TO_DECIMAL

    TO_FLOAT

    TO_INTEGER

    Used to convert datatypes

  • 7/29/2019 Informatica Transformations

    35/255

    Informatica Functions Data Cleansing

    INSTR

    IS_DATE

    IS_NUMBER

    IS_SPACES

    ISNULL

    LTRIM

    METAPHONE

    REPLACECHR

    Used to process data during data cleansing

    METAPHONE and SOUNDEX create indexes basedon English pronunciation (2 different standards)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    REPLACESTR

    RTRIM

    SOUNDEX

    SUBSTR

    TO_CHAR

    TO_DATE

    TO_DECIMALTO_FLOAT

    TO_INTEGER

  • 7/29/2019 Informatica Transformations

    36/255

    Informatica Functions Date

    Date Functions

    Used to round, truncate, or

    compare dates; extract one

    part of a date; or perform

    ADD_TO_DATE

    DATE_COMPARE

    DATE_DIFF

    GET_DATE_PART

    LAST_DAY

    ROUND (Date)

    SET_DATE_PART

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    arithmetic on a date

    To pass a string to a date

    function, first use the

    TO_DATE function to convert

    it to an date/time datatype

    _

    TRUNC (Date)

  • 7/29/2019 Informatica Transformations

    37/255

    Informatica Functions Numerical and

    Scientific

    Numerical Functions

    Used to perform mathematical

    operations on numeric data

    ABS

    CEIL

    CUME

    EXP

    FLOOR

    LN

    LOG

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    MOVINGAVG

    MOVINGSUM

    POWER

    ROUND

    SIGN

    SQRT

    TRUNC

    COS

    COSH

    SIN

    SINH

    TANTANH

    Scientific Functions

    Used to calculate

    geometric values of

    numeric data

  • 7/29/2019 Informatica Transformations

    38/255

    Informatica Functions Special and

    Test

    ABORT

    DECODE

    ERROR

    Special Functions

    Used to handle specific conditions within

    a session; search for certain values; test

    conditional statements

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Test Functions

    Used to test if a lookup result is null

    Used to validate data

    LOOKUP, ,

    IS_DATE

    IS_NUMBERIS_SPACES

    ISNULL

  • 7/29/2019 Informatica Transformations

    39/255

    Default ValuesTwo Usages

    For input and I/O ports, default values are used toreplace null values

    For output ports, default values are used to handle transformationcalculation errors (not-null handling)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Default value

    for the

    selected port

    port Validate thedefault value

    expression

    ISNULL function is

    not required

  • 7/29/2019 Informatica Transformations

    40/255

    Mapping Validation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    41/255

    Connection Validation

    Examples of invalid connections in aMapping:

    Connecting ports with incompatible datatypes

    Connecting output ports to a Source

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Connecting a Source to anything Except a Source

    Qualifier or Normalizer transformation*

    Connecting an output port to an output port or an

    input port to another input port

    *used for Cobol files

  • 7/29/2019 Informatica Transformations

    42/255

    Mapping Validation

    Mappings must:

    Be valid for a Session to run

    Be end-to-end complete and contain valid expressions

    Pass all data flow rules

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    app ngs are a ways va a e w en save ; can e va a e w oubeing saved

    Output Window displays reason for invalidity

  • 7/29/2019 Informatica Transformations

    43/255

    Example Mapping

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    44/255

    4. Session Task

    Server instructions to run the logic of ONE specific mapping

    e.g. source and target data location specifications, memory allocation,optional Mapping overrides, scheduling, processing and load instructions

    Becomes a component of aWorkflow (or Worklet

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    If configured in the Task Developer,the Session Task is reusable(optional)

  • 7/29/2019 Informatica Transformations

    45/255

    5. Workflow Structure A Workflowis set of instructions for the Informatica Server to

    perform data transformation and load Combines the logic of Session Tasks, other types of Tasks and

    Worklets The simplest Workflow is composed of a Start Task, a Link and

    one other Task

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Start

    TaskSession Task

    Link

  • 7/29/2019 Informatica Transformations

    46/255

    6. Workflow Monitor The Workflow Monitor is the tool for monitoring Workflows and

    Tasks

    Choose between two views:

    Gantt chart

    Task view

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Gantt Chart view Task view

  • 7/29/2019 Informatica Transformations

    47/255

    Target Load Plan

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

  • 7/29/2019 Informatica Transformations

    48/255

    Target Load Plan

    Target Load plan, informs the server the order in which to readSource Qualifiers for sending data to Targets

    A target load plan decides the loading order of targets in amapping (If we use multiple source qulifiers).

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    ,transformations, and targets linked together in a mapping.

    You can set the target load order if you want to maintainreferential integrity when inserting, deleting, or updatingtables that have the primary key and foreign key constraints. Itis called as Constraint-based Loading (Only one Sourcequalifier)

  • 7/29/2019 Informatica Transformations

    49/255

    -

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

  • 7/29/2019 Informatica Transformations

    50/255

    Constraint-based Loading

    PK1

    FK1 PK2

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    FK2

    To maintain referential integrity, primary keys must be

    loaded before their corresponding foreign keys here in

    the order Target1, Target2, Target 3

  • 7/29/2019 Informatica Transformations

    51/255

    Setting Constraint-based Loading

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

  • 7/29/2019 Informatica Transformations

    52/255

    Constraint-based Loading

    Terminology Active transformation

    Can operate on groups of data rows and/orcan change the number of rows on the data flow

    Examples: Source Qualifier, Aggregator, Joiner, Sorter, Filter

    Active source Active transformation that generates row

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Cannot match an output row with a distinct input row

    Examples: Source Qualifier, Aggregator, Joiner, Sorter

    (The Filter is NOT an active source)

    Active group

    Group of targets in a mapping being fed by the same active source

  • 7/29/2019 Informatica Transformations

    53/255

    Constraint-Based Loading

    RestrictionsCannot have two active groupsExample 1

    With only one Active source, rows

    for Targets1, 2, and 3 will be

    loaded properly and maintain

    referential integrity

    PK1

    FK1

    PK2

    FK2

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Example 2

    With two Active sources, it is notpossible to control whether rows forTarget3 will be loaded before or afterthose for Target2

    PK1

    FK1

    PK2

    FK2

  • 7/29/2019 Informatica Transformations

    54/255

    Example

    Target Tables

    CREATE TABLE DEPT1

    (DEPTNO NUMBER(2) CONSTRAINT PK_DEPT1 PRIMARY KEY,

    DNAME VARCHAR2(14) ,

    LOC VARCHAR2(13) ) ;

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    CREATE TABLE EMP1

    (EMPNO NUMBER(4) CONSTRAINT PK_EMP1 PRIMARY KEY,

    ENAME VARCHAR2(10),

    JOB VARCHAR2(9),

    MGR NUMBER(4),

    HIREDATE DATE,

    SAL NUMBER(7,2),

    COMM NUMBER(7,2),

    DEPTNO NUMBER(2) CONSTRAINT FK_DEPTNO1 REFERENCES DEPT);

  • 7/29/2019 Informatica Transformations

    55/255

  • 7/29/2019 Informatica Transformations

    56/255

    Types of Transformation

    1. Passive transformation1. Operates on one row of data at a time AND

    2. Cannot change the number of rows on the data flow

    3. Exam le: Ex ression Looku Stored Procedure

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    transformation

    2. Active transformation1. Can operate on groups of data rows AND/OR

    2. Can change the number of rows on the data flow

    3. Examples: Aggregator, Filter, Source Qualifier

  • 7/29/2019 Informatica Transformations

    57/255

    Example

    Tax=Sal *0.1Passive

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Deptno=10

    14 Rows 5 Rows

    14 Rows14 Rows

    Active

  • 7/29/2019 Informatica Transformations

    58/255

    Types of Transformation

    1. Connected transformation1. Is connected in mapping

    2. All active and passive can use as connected

    3. Connected transformation receives multiple input ports andcan rovides multi le out uts

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    2. Unconnected transformation1. Is unconnected in mapping

    2. Stored and lookup transformations only can use asunconnected

    3. unconnected transformation receives multiple input ports andprovides only one output

  • 7/29/2019 Informatica Transformations

    59/255

    Example

    Connected

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Unconnected

  • 7/29/2019 Informatica Transformations

    60/255

    Expression Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    61/255

    Expression Transformation

    Ports

    Mixed

    Variables allowed

    Perform calculations using non-aggregate functions (row level)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Create expression in an

    output or variable port

    Usage

    Perform majority of datamanipulation

    Click here to invoke theExpression Editor

  • 7/29/2019 Informatica Transformations

    62/255

    Expression Editor

    An expression formula is a calculation or conditional statement fora specific port in a transformation

    Performs calculation based on ports, functions, operators,variables, constants and return values from other transformations

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    63/255

    Expression Validation

    The Validate or OK button in the Expression Editor will:

    Parse the current expression

    Remote port searching (resolves references to

    ports in other transformations)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Parse e au t va ues

    Check spelling, correct number of arguments in functions, other

    syntactical errors

  • 7/29/2019 Informatica Transformations

    64/255

  • 7/29/2019 Informatica Transformations

    65/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    66/255

  • 7/29/2019 Informatica Transformations

    67/255

    1. Reusable Tasks

    Three types of reusable Tasks

    Session Set of instructions toexecute a specific Mapping

    Command Specific shell

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    comman s to run ur ng anyWorkflow

    Email Sends email during theWorkflow

  • 7/29/2019 Informatica Transformations

    68/255

    Reusable Tasks

    Use the Task Developerto create

    reusable tasks

    These tasks will then appear in

    the Navigator and can be

    dragged and dropped into any

    workflow

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    69/255

  • 7/29/2019 Informatica Transformations

    70/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    .

  • 7/29/2019 Informatica Transformations

    71/255

    Session Task

    Server instructions to run the logic of ONE specificmappinge.g. source and target data location specifications,memory allocation, optional Mapping overrides,scheduling, processing and load instructions

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    72/255

    Creating a Session Task Created to execute the logic of a mapping (one mapping

    only)

    Session Tasks can be created in two ways

    1. Using Task Developer (Reusable)

    2. Using Workflow Designer (Workflow-specific)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    73/255

    Using Task Developer (Reusable)

    In Work flow manager Click on

    Select the Session button from the Task Toolbar

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Or Select menu Tasks | Create and select Session from the drop-downmenu

  • 7/29/2019 Informatica Transformations

    74/255

    Using Workflow Designer (Work Flow -Specific)

    In Work flow manager Click on

    Select the Session button from the Task Toolbar

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Or Select menu Tasks | Create and select Session from the drop-downmenu

  • 7/29/2019 Informatica Transformations

    75/255

    Session TaskProperties and

    ParametersSession Task

    Sessionparameter

    Properties Tab

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    76/255

    Session TaskSetting Source

    PropertiesSession Task

    Selectsource

    instance

    Mapping Tab

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Set

    properties

    Set

    connection

  • 7/29/2019 Informatica Transformations

    77/255

    Session TaskSetting Target

    PropertiesSession Task

    Select target

    instance

    Mapping Tab

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Note: Heterogeneous targets are

    supported

    Set properties

    Set connection

  • 7/29/2019 Informatica Transformations

    78/255

    Reusable Session Configurations

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    79/255

    Session Configuration

    Define properties to be reusable across

    different sessions

    Defined at folder level

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Must ave one o t ese too s

    open in order to access

  • 7/29/2019 Informatica Transformations

    80/255

    Session Configuration (cont d)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Available from menu or

    Task toolbar

  • 7/29/2019 Informatica Transformations

    81/255

    Session Configuration (cont d)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    82/255

    Session Task Config Object

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Within Session task properties, choose desired

    configuration

  • 7/29/2019 Informatica Transformations

    83/255

    Session Task Config Object Attributes

    Attributes

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    may be

    overridden

    within the

    Session task

  • 7/29/2019 Informatica Transformations

    84/255

    2. Command Task

    Specify one or more Unix shell or DOS commands torun during the Workflow

    Runs in the Informatica Server (UNIX or Windows)environment

    Command task status successful com letion or

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    failure) is held in the pre-defined task variable$command_task_name.STATUS

    Each Command Task shell command can executebefore the Session begins or after the Informatica

    Server executes a Session

  • 7/29/2019 Informatica Transformations

    85/255

    Command Task

    Specify one (or more) Unix shell or DOS (NT, Win2000)commands to run at a specific point in the workflow

    Becomes a component of a workflow (or worklet)

    If created in the Task Developer, the Command task is

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    If created in the Workflow Designer, the Command task isnot reusable

    Commands can also be invoked under the Components

    tab of a Session task to run pre- or post-session

  • 7/29/2019 Informatica Transformations

    86/255

    Command Task (cont d)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    87/255

    Command Task (cont d)

    Add Cmd

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Remove Cmd

  • 7/29/2019 Informatica Transformations

    88/255

    Command Task(Example)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    89/255

    Command Task(Example)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    90/255

    3. Email Task

    Configure to have the Informatica Server to send email atany point in the Workflow

    Becomes a component in a Workflow (or Worklet) If configured in the Task Developer, the Email Task is

    reusable (optional)

    Emails can also be invoked under the Com onents tab of a

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Session task to run pre- or post-session

  • 7/29/2019 Informatica Transformations

    91/255

    Email Task (cont d)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    92/255

    Email Task (Example)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    93/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    94/255

    Non-Reusable Tasks

    Six additional Tasks are available in the WorkflowDesigner

    Decision

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Timer

    Control

    Event Wait

    Event Raise

  • 7/29/2019 Informatica Transformations

    95/255

    1. Decision Task Specifies a condition to be evaluated in the Workflow

    Use the Decision Task in branches of a Workflow

    Use decision task instead of multiple link conditions .

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    96/255

    Decision Task

    The Decision task has a predefined variable

    called $Decision_task_name.condition that

    represents the result of the decision

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    .the condition in the Decision task and sets the

    predefined condition variable to True (1) or

    False (0).

  • 7/29/2019 Informatica Transformations

    97/255

    Decision Task(Example)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    98/255

    2. Assignment Task

    Assigns a value to a Workflow Variable

    Variables are defined in the Workflow object

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Expressions Tab

    General Tab

  • 7/29/2019 Informatica Transformations

    99/255

    Assignment Task

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    100/255

    3. Timer Task Waits for a specified period of time to execute the next Task

    General Tab

    Absolute Time

    Datetime Variable

    Timer Tab

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Relative Time

  • 7/29/2019 Informatica Transformations

    101/255

    Timer Task modes

    Absolute timevWe specify the exact date and time or we can choose

    a user-defined workflow variable to specify the exacttime. The next task in workflow will run as per the

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    .

    Relative timev We instruct the Power Center Server to wait for a

    specified period of time after the Timer task, the

    parent workflow, or the top-level workflow starts

  • 7/29/2019 Informatica Transformations

    102/255

    Timer Task(Example)

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    103/255

    4. Control Task Stop or ABORT the Workflow

    General

    Tab

    Properties Tab

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    104/255

  • 7/29/2019 Informatica Transformations

    105/255

    5. Event Wait Task

    Pauses processing of the pipeline until a specified event

    occurs

    Events can be: Pre-defined file watch

    User-defined created b an Event Raise task some where in the

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    workflow

  • 7/29/2019 Informatica Transformations

    106/255

    Event Wait Task File watch

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    107/255

    6. Event Raise Task Represents the location of a user-defined event

    The Event Raise Task triggers the user-defined event when the

    Informatica Server executes the Event Raise Task

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Used with the Event Wait Task

    General Tab Properties Tab

  • 7/29/2019 Informatica Transformations

    108/255

    Event Wait user defined Example

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    109/255

    Event Wait user defined Example

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    110/255

    Event Wait user defined Example

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    111/255

    Event Wait user defined Example

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    112/255

    Filter Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Filt T f ti

  • 7/29/2019 Informatica Transformations

    113/255

    Filter Transformation

    1. Is a condition created with followingelements

    1. Port or column

    2. Operator

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    . peran

    Example Deptno = 10

    1 2 3

    Filter Transformation

  • 7/29/2019 Informatica Transformations

    114/255

    Filter Transformation

    1. Is Active2. Is connected

    3. Use the Filter transformation to filter outrows in a mapping

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    .

    5. The naming convention for a Filtertransformation is FIL_TransformationName

    6. Condition to reject rows of records whichhave FIRST_NAME nullIIF(ISNULL(FIRST_NAME),FALSE,TRUE)

  • 7/29/2019 Informatica Transformations

    115/255

  • 7/29/2019 Informatica Transformations

    116/255

    Example Filter

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    117/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    118/255

    Worklets

    An object representing a set or grouping of Tasks

    Can contain any Task available in the Workflow Manager

    Worklets expand and execute inside a Workflow

    A Workflow which contains a Worklet is called the parent

    Workflow

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Worklets CAN be nested

    Reusable Worklets create in the Worklet Designer

    Non-reusable Worklets create in the Workflow Designer

  • 7/29/2019 Informatica Transformations

    119/255

    Re-usable Worklet In the Worklet Designer, select Worklets | Create

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Tasks in a Worklet

    Worklets

    Node

  • 7/29/2019 Informatica Transformations

    120/255

  • 7/29/2019 Informatica Transformations

    121/255

  • 7/29/2019 Informatica Transformations

    122/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Debugger

  • 7/29/2019 Informatica Transformations

    123/255

    Debugger

    By the end of this section you will be familiar with:

    Creating a Debug Session

    Debugger windows and indicators

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Viewing data with the Debugger

    Setting and using Breakpoints

    Tips for using the Debugger

    D b F t

  • 7/29/2019 Informatica Transformations

    124/255

    Debugger Features

    Wizard driven tool that runs a test session

    View source / target data

    View transformation data

    Set breakpoints and evaluate expressions

    Initialize variables

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Manually change variable values

    Data can be loaded or discarded

    Debug environment can be saved for later use

  • 7/29/2019 Informatica Transformations

    125/255

  • 7/29/2019 Informatica Transformations

    126/255

    Set Breakpoints

    2. Choose global or specific

    transformation

    3. Choose to break on data

    condition or error. Optionally

    1. Edit breakpoint

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    skip rows.

    4. Add breakpoint(s)

    5. Add data conditions

    6. Continue (to next breakpoint)

  • 7/29/2019 Informatica Transformations

    127/255

    Debugger Tips

    Server must be running before starting a Debug Session

    When the Debugger is started, a spinning icon displays. Spinning stops

    when the Debugger Server is ready

    The flashing yellow/green arrow points to the current active Source

    Qualifier. The solid yellow arrow points to the current Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Next Instance proceeds a single step at a time; one row

    moves from transformation to transformation

    Step to Instance

    examines one transformation at a time,following successive rows through the same transformation

  • 7/29/2019 Informatica Transformations

    128/255

    Sorter Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Sorter Transformation

  • 7/29/2019 Informatica Transformations

    129/255

    Sorter Transformation

    Can sort data from relational tables or flat files

    Sort takes place on the Informatica Server machine

    Multiple sort keys are supported

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    The Sorter transformation is often more efficient than asort performed on a database with an ORDER BY clause

    Is useful to eliminate duplicate records so it is called asactive transformation

    Sorter Transformation

  • 7/29/2019 Informatica Transformations

    130/255

    Sorter Transformation

    Sorts data from any source, at any point in a data flow

    Ports

    Input/Output

    Define one or more sort

    keys

    Sort Keys

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Define sort order for

    each key

    Example of Usage

    Sort data before

    Aggregator to improve

    performanceSort Order

    Sorter Properties

  • 7/29/2019 Informatica Transformations

    131/255

    Sorter Properties

    Cache size can be

    ad usted. Default is 8 Mb.

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Ensure sufficient memory is

    available on the Informatica

    Server (else Session Task will

    fail)

  • 7/29/2019 Informatica Transformations

    132/255

    Aggregator Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Aggregator Transformation

  • 7/29/2019 Informatica Transformations

    133/255

    Aggregator Transformation

    By the end of this section you will be familiar with:

    Basic Aggregator functionality

    Creating subtotals with the Aggregator

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Aggregator properties

    Using sorted data

    f

  • 7/29/2019 Informatica Transformations

    134/255

    Aggregator Transformation

    Ports Mixed I/O ports allowed

    Variable ports allowed

    Performs aggregate calculations

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Group By allowed

    Create expressions in variable

    and output ports

    Usage

    Standard aggregations

    Aggregate Expressions

  • 7/29/2019 Informatica Transformations

    135/255

    Aggregate Expressions

    Aggregate

    functions are

    supported only in

    the Aggregator

    Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Conditional Aggregate

    expressions are supported: Conditional SUM format: SUM(value, condition)

    Aggregator Functions

  • 7/29/2019 Informatica Transformations

    136/255

    Aggregator Functions

    Return summary values for non-null data inselected ports

    Use only in Aggregator transformations Use in output ports only Calculate a single value (and row) for all records

    in a group

    AVG

    COUNT

    FIRST

    LAST

    MAX

    MEDIAN

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    within an aggregate function

    Conditional statements can be used with these

    functions

    STDDEV

    SUM

    VARIANCE

    Aggregator Properties

  • 7/29/2019 Informatica Transformations

    137/255

    Aggregator Properties

    Sorted Input Property

    Instructs the

    Aggregator to

    expect the data to

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Set Aggregator cache

    sizes for Informatica

    Server machine

    be sorted

    Aggregating Unsorted Data

  • 7/29/2019 Informatica Transformations

    138/255

    Aggregating Unsorted Data

    Unsorted

    data

    Group By:

    - store

    - department

    - date

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    No rows are released from Aggregator untilall rows are aggregated

    Aggregating Sorted Data

  • 7/29/2019 Informatica Transformations

    139/255

    Aggregating Sorted Data

    Group By:

    - store

    - department

    - date

    Data sorted by:

    - store

    - department

    - date

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Each separate group (one row) is released as soonas the last row in the group is aggregated

    Components of the Aggregator

  • 7/29/2019 Informatica Transformations

    140/255

    p gg g

    Transformation Aggregate cache. The Integration Service stores data in the

    aggregate cache until it completes aggregate calculations. It storesgroup values in an index cache and row data in the data cache.

    Aggregate expression. Enter an expression in an output port. Theexpression can include non-aggregate expressions and conditionalclauses

    Grou b ort. Indicate how to create rou s. The ort can be an

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    input, input/output, output, or variable port. When grouping data,the Aggregator transformation outputs the last row of each groupunless otherwise specified.

    Sorted input. Select this option to improve session performance. Touse sorted input, you must pass data to the Aggregatortransformation sorted by group by port, in ascending or descending

    order.

  • 7/29/2019 Informatica Transformations

    141/255

    Monitoring Workflows

  • 7/29/2019 Informatica Transformations

    142/255

    Monitoring Workflows

    By the end of this section you will be familiar with:

    The Workflow Monitor GUI interface

    Monitoring views

    Server monitoring modes

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Filtering displayed items

    Actions initiated from the Workflow Monitor

    Truncating Monitor Logs

    W kfl M it

  • 7/29/2019 Informatica Transformations

    143/255

    Workflow Monitor

    The Workflow Monitor is the tool for monitoring Workflows andTasks

    Choose between two views:

    Gantt chart

    Task view

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Gantt Chart view Task view

    Monitoring Current and Past

  • 7/29/2019 Informatica Transformations

    144/255

    g

    Workflows The Workflow Monitor displays only workflows that have

    been run

    Displays real-time information from the Informatica Server

    and the Repository Server about current workflow runs

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Monitoring Operations

  • 7/29/2019 Informatica Transformations

    145/255

    Monitoring Operations

    Perform operations in the Workflow Monitor Stop, Abort, or Restart a Task, Workflow or Worklet

    Resume a suspended Workflow after a failed Task is corrected

    Reschedule or Unschedule a Workflow

    View Session and Workflow logs Abort has a 60 second timeout

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    e erver as no comp e e process ng an comm ngdata during the timeout period, the threads and processesassociated with the Session are killed

    Stopping a Session Task means the Server stops reading data

    Monitoring in Task View

  • 7/29/2019 Informatica Transformations

    146/255

    Monitoring in Task ViewStart Completion

    Task Server Workflow Worklet Time Time

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Status Bar

    Start, Stop, Abort, Resume

    Tasks,Workflows and Worklets

    Filtering in Task View

  • 7/29/2019 Informatica Transformations

    147/255

    Filtering in Task View

    Monitoring filters can

    be set using drop down

    menus.

    Minimizes items

    displayed in Task

    View

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Right-click on Session to retrieve the Session

    Log (from the Server to the local PC Client)

    Filter Toolbar

  • 7/29/2019 Informatica Transformations

    148/255

    Filter Toolbar

    Select type of tasks to filter

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182#209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Display recent runs

    Filter tasks by specified criteria

    Select servers to filter

    Truncating Workflow Monitor Logs

  • 7/29/2019 Informatica Transformations

    149/255

    Truncating Workflow Monitor Logs

    Workflow Monitor

    Repository Manager

    Repository Manager s

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    clears the Workflow

    Monitor logs

  • 7/29/2019 Informatica Transformations

    150/255

    Joiner Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Joiner Transformation

  • 7/29/2019 Informatica Transformations

    151/255

    By the end of this section you will be familiar with:

    When to join in Source Qualifier and when in Joinertransformation

    Homogeneous joins

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Heterogeneous joins

    Joiner properties

    Joiner conditions

    Nested joins

    When to Join in Source Qualifier

  • 7/29/2019 Informatica Transformations

    152/255

    If you can perform a join on the source database, then you canconfigure it in the Source Qualifier

    The SQL that the Source Qualifier generates, default orcustom, executes on the source database at runtime

    Example: homogeneous join 2 database tables in same

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    database

    When You Cannot Join in Source

    Qualifier

  • 7/29/2019 Informatica Transformations

    153/255

    Qualifier

    If you cannotperform a join on the source database, then youcannotconfigure it in the Source Qualifier

    Examples: heterogeneous joins

    An Oracle table and a DB2 table

    A flat file and a database table

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Two flat files

    Joiner Transformation

  • 7/29/2019 Informatica Transformations

    154/255

    Active Transformation

    Ports

    All input or input / output

    Performs heterogeneous joins on different data flows

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    from master source

    Examples

    Join two flat files

    Join two tables from

    different databases

    Join a flat file with arelational table

    Joiner Conditions

  • 7/29/2019 Informatica Transformations

    155/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    supported

    Joiner Properties

  • 7/29/2019 Informatica Transformations

    156/255

    Join types:

    Normal (inner)

    Master outer

    Detail outer

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Full outer

    Joiner can accept sorted data (configure the join condition to use the sort

    origin ports)

    Set Joiner

    Caches

    Nested Joins

  • 7/29/2019 Informatica Transformations

    157/255

    Used to join three or more heterogeneous sources

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Mid-Mapping Join (Unsorted)

  • 7/29/2019 Informatica Transformations

    158/255

    The unsorted Joiner does not accept input in the following

    situations:

    Both input pipelines begin with the same Source Qualifier

    Both input pipelines begin with the same Joiner

    The sorted Joiner does not have these restrictions.

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    159/255

    Performance Tuning

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Performance Tuning

  • 7/29/2019 Informatica Transformations

    160/255

    g

    First step in performance tuning is to identify the performance bottleneck in thefollowing order:

    Target

    Source

    Mapping

    Session

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    The most common performance bottleneck occurs when the Informatica Server

    writes to a target database.

    Target Bottlenecks

  • 7/29/2019 Informatica Transformations

    161/255

    g

    Identifying A target bottleneck can be identified by configuring the session to write to a

    flat file target.

    Optimizing

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Dropping Indexes and Key Constraints before loading.

    Increasing commit intervals.

    Use of Bulk Loading / External Loading.

    Source Bottlenecks

  • 7/29/2019 Informatica Transformations

    162/255

    Source Bottlenecks

    Identifying Add a filter condition after Source qualifier to false so that no

    data is processed past the filter transformation. If the time it

    takes to run the new session remains about the same, then there

    is a source bottleneck.

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    n a es mapp ng remove a e rans orma ons an e

    performance is similar, then there is a source bottleneck.

    Optimizing

    Optimizing the Query by using hints.

    Use Informatica Conditional Filters if the source system lacksindexes.

    Mapping Bottlenecks

  • 7/29/2019 Informatica Transformations

    163/255

    Mapping Bottlenecks Identifying

    If there is no source bottleneck, add a Filter

    transformation in the mapping before each target

    definition. Set the filter condition to false so that no

    data is loaded into the target tables. If the time it takes

    to run the new session is the same as the original

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    session, there is a mapping bottleneck.

    Optimizing

    Configure for Single-Pass reading

    Avoid unnecessary data type conversions.

    Avoid database reject errors.

    Use Shared Cache / Persistent Cache

    Session Bottlenecks

  • 7/29/2019 Informatica Transformations

    164/255

    Session Bottlenecks

    Identifying If there is no source, Target or Mapping bottleneck, then there may be a

    session bottleneck.

    Use Collect Performance Details. Any value other than zero in thereadfromdisk and writetodisk counters for Aggregator, Joiner, or Ranktransformations indicate a session bottleneck. Low (0-20%)BufferInput_efficiency and BufferOutput_efficiency counter values also

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    .

    Optimizing Increase the number of partitions.

    Tune session parameters.

    DTM Buffer Size (6M128M)

    Buffer Block Size (4K128K)

    Data (2M

    24 M )/ Index (1M -12M) Cache Size

    Use incremental Aggregation if possible.

    Session Bottlenecks - Memory

  • 7/29/2019 Informatica Transformations

    165/255

    Configure the index and data cache

    memory for the Aggregator, Rank,

    and Joiner transformations in the

    Configuration Parameters dialog box The amount of memory you

    configure depends on partitioning,

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    largest cache, and how much memory

    cache and disk cache you want to use

    System Bottlenecksd f

  • 7/29/2019 Informatica Transformations

    166/255

    Identifying

    If there is no source, Target, Mapping or Session bottleneck, thenthere may be a system bottleneck.

    Use system tools to monitor CPU usage, memory usage, and paging.

    On Windows :- Task Manager

    On Unix Systems tools like sar, iostat. For E.g. sar u (%usage on

    user, idle time, i/o waiting time)

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Optimizing

    Improve network speed.

    Improve CPU performance

    Check hard disks on related machines

    Reduce Paging

    Incremental Aggregation

  • 7/29/2019 Informatica Transformations

    167/255

    First Run creates idx and dat files.

    Second Run performs the following actions:

    For each i/p record, the Server checks historical information in the index

    file for a corresponding group, then:

    If it finds a corresponding group, it performs the aggregate operation

    incrementall usin the a re ate data for that rou and saves the

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    incremental change

    If it does not find a corresponding group, it creates a new group and

    saves the record data

    When writing to the target Informatica Server

    Updates modified aggregate groups in the target

    Inserts new aggregate data

    Deletes removed aggregate data

    Ignores unchanged aggregate data

    Saves modified aggregate data in the index and data files

    Incremental Aggregation

  • 7/29/2019 Informatica Transformations

    168/255

    Incremental Aggregation

    You can find options for

    incremental aggregation

    on the Transformations

    tab in the session

    properties

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    The Server Manager

    displays a warning

    indicating the

    Informatica Server

    overwrites the existing

    cache and a reminder to

    clear this option after

    running the session

    Commit Points

  • 7/29/2019 Informatica Transformations

    169/255

    A commit interval is the interval at which the Informatica Servercommits data to relational targets during a session The commit point can be a factor of the commit interval, the

    commit interval type, and the size of the buffer blocks The commit interval is the number of rows you want to use as a

    basis for the commit point

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    as a basis for the commit point Can choose between the following types of commit interval

    Target-based commit Source-based commit

    During a source-based commit session, the Informatica Server

    commits data to the target based on the number of rows from anactive source in a single pipeline

    Commit Points

  • 7/29/2019 Informatica Transformations

    170/255

    During a target-based commitsession, the Informatica Server

    continues to fill the writer buffer

    after it reaches the commit

    interval

    When the buffer block is filled,

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    commit command

    As a result, the amount of data

    committed at the commit point

    generally exceeds the commit

    interval

    Commit Points

  • 7/29/2019 Informatica Transformations

    171/255

    During a source-based commit session, the Informatica Server commits

    data to the target based on the number of rows from an active source in a

    single pipeline

    These rows are referred to as source rows

    A pipeline consists of a source qualifier and all the transformations and

    targets that receive data from the source qualifier

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Advanced External Procedure

    Source Qualifier

    Normalizer

    Aggregator

    Joiner Rank

    Mapplet, if it contains one of the above transformations

    Commit Points

  • 7/29/2019 Informatica Transformations

    172/255

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    When the Informatica Server runs a source-based commit session, it

    identifies the active source for each pipeline in the mapping

    The Informatica Server generates a commit row from the active source

    at every commit interval

    When each target in the pipeline receives the commit row, the

    Informatica Server performs the commit

    Commit Points

  • 7/29/2019 Informatica Transformations

    173/255

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Constraint-based Loading

  • 7/29/2019 Informatica Transformations

    174/255

    g

    PK1

    FK1 PK2

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    FK2

    To maintain referential integrity, primary keys must beloaded before their corresponding foreign keys here in

    the order Target1, Target2, Target 3

    Setting Constraint-based Loading

  • 7/29/2019 Informatica Transformations

    175/255

    g g

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Constraint-based Loading

    Terminology

  • 7/29/2019 Informatica Transformations

    176/255

    Terminology Active transformation

    Can operate on groups of data rows and/orcan change the number of rows on the data flow

    Examples: Source Qualifier, Aggregator, Joiner, Sorter, Filter

    Active source Active transformation that generates row

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Cannot match an output row with a distinct input row

    Examples: Source Qualifier, Aggregator, Joiner, Sorter

    (The Filter is NOT an active source)

    Active group Group of targets in a mapping being fed by the same active source

    Constraint-Based Loading

    Restrictions

  • 7/29/2019 Informatica Transformations

    177/255

    RestrictionsCannot have two active groups

    Example 1

    With only one Active source, rows

    for Targets1, 2, and 3 will be

    loaded properly and maintain

    referential integrity

    PK1

    FK1

    PK2

    FK2

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Example 2

    With two Active sources, it is notpossible to control whether rows forTarget3 will be loaded before or afterthose for Target2

    PK1

    FK1

    PK2

    FK2

  • 7/29/2019 Informatica Transformations

    178/255

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

  • 7/29/2019 Informatica Transformations

    179/255

    Source Qualifier Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Source Qualifier Transformation

  • 7/29/2019 Informatica Transformations

    180/255

    Ports All input/output

    Represents the source record set queried by the Server.Mandatory in Mappings using relational or flat file sources

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Convert datatypes

    For relational sources:

    Modify SQL statement

    User Defined Join

    Source Filter

    Sorted ports

    Select DISTINCTPre/Post SQL

    Source Qualifier Properties

  • 7/29/2019 Informatica Transformations

    181/255

    Is active transformation

    Used to read data from tables and flat files

    Useful to remove duplicates

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Source Qualifier can join homogenous tables

    User can modify WHERE clause

    User can modify join statement

    Source Qualifier Properties

  • 7/29/2019 Informatica Transformations

    182/255

    User can specify ORDER BY (manually or automatically)

    Pre- and post-SQL can be provided

    SQL properties do not apply to flat file sources

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    183/255

    Lookup Transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Lookup Transformation

  • 7/29/2019 Informatica Transformations

    184/255

    Can use in two ways

    1. Connected

    2. Un connected

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

  • 7/29/2019 Informatica Transformations

    185/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    .

    Lookup Transformation

  • 7/29/2019 Informatica Transformations

    186/255

    By the end of this section you will be familiar with:

    Lookup principles

    Lookup properties

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Lookup techniques

    Caching considerations

    Persistent caches

    How a Lookup Transformation Works

  • 7/29/2019 Informatica Transformations

    187/255

    For each mapping row, one or more port values are looked up in adatabase table or flat file

    If a match is found, one or more table values are returned to the

    mapping. If no match is found, NULL is returned

    Lookup value(s)

    Lookup transformation

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Return value(s)

  • 7/29/2019 Informatica Transformations

    188/255

    Lookup Conditions

  • 7/29/2019 Informatica Transformations

    189/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Multiple conditions are supported

    Lookup Properties

  • 7/29/2019 Informatica Transformations

    190/255

    Lookup

    table name

    Native database

    Lookup condition

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    connection object name

    Source type: Database

    or Flat File

    Lookup Properties cont d

  • 7/29/2019 Informatica Transformations

    191/255

    Polic on multi le

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    match:

    Use first value

    Use last value

    Report error

    Lookup Caching

  • 7/29/2019 Informatica Transformations

    192/255

    Caching can significantly impact performance

    Cached

    Lookup table data is cached locally on the Server

    Mapping rows are looked up against the cache

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Uncached

    Each Mapping row needs one SQL SELECT

    Rule Of Thumb: Cache if the number (and size) of records in the Lookup table is

    small relative to the number of mapping rows requiring the lookup

    Persistent Caches

  • 7/29/2019 Informatica Transformations

    193/255

    By default, Lookup caches are not persistent; when the session completes,the cache is erased

    Cache can be made persistent with the Lookup properties

    When Session completes, the persistent cache is stored on the server harddisk

    The next time Session runs, cached data is loaded fully or partially into RAM

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    and reused

    A named persistent cache may be shared by different sessions

    Can improve performance, but stale data may pose a problem

  • 7/29/2019 Informatica Transformations

    194/255

    Lookup Caching Properties (cont d)

  • 7/29/2019 Informatica Transformations

    195/255

    Set Lookup

    cache sizes

    Make cache

    persistent

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Set prefix for

    persistent cache file

    name

    Reload

    persistentcache

  • 7/29/2019 Informatica Transformations

    196/255

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    .

    Unconnected Lookups

  • 7/29/2019 Informatica Transformations

    197/255

    By the end of this section you will know:

    Unconnected Lookup technique

    Unconnected Lookup functionality

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Unconnected Lookup

  • 7/29/2019 Informatica Transformations

    198/255

    Physically unconnected from other transformations NO data flow arrows

    leading to or from an unconnected Lookup Lookup data is called from the point in the Mapping that needs it Lookup function can be set within any transformation that supports

    expressions

    Function in the Aggregator calls the

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    unconnected Lookup

    Unconnected Lookup Technique

  • 7/29/2019 Informatica Transformations

    199/255

    ConditionRow keys

    (passed to Lookup)

    Use lookup lookup function within a conditional statement

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Condition is evaluated for each row but Lookup function is

    called only if condition satisfied

    _ , . _

    Lookup function

    Unconnected Lookup Functionality

  • 7/29/2019 Informatica Transformations

    200/255

    One Lookup port value may be returned for each Lookup

    Must check a

    Return port in the

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    Ports tab, else failsat runtime

    Connected versus Unconnected

    Lookups

  • 7/29/2019 Informatica Transformations

    201/255

    CONNECTED LOOKUP UNCONNECTED LOOKUP

    Part of the mapping data flow Separate from the mapping dataflow

    Returns multiple values (bylinking output ports to anothertransformation

    Returns one value- by checkingthe Return (R) port option for theout ut ort that rovides the

    #209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841, 8790998182

    return value

    Executed for every recordpassing through thetransformation

    Only executed when the lookupfunction is called

    More visible, shows where the

    lookup values are used

    Less visible, as the lookup is

    called from an expression withinanother transformation

    Default values are used Default values are ignored

  • 7/29/2019 Informatica Transformations

    202/255

    Update Strategy Transformation

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Business Challenge

  • 7/29/2019 Informatica Transformations

    203/255

    When you design a data warehouse, you need to decide whattype of information to store in targets. As part of the targettable design, you need to determine whether to maintain allthe historic data or just the most recent changes.

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Update Levels

  • 7/29/2019 Informatica Transformations

    204/255

    Within a session: When you configure a session, you caninstruct the Integration Service to either treat all rows inthe same way (for example, treat all rows as inserts), oruse instructions coded into the session mapping to flag

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Within a mapping: Within a mapping, you use the

    Update Strategy transformation to flag rows for insert,delete, update, or reject.

    Flagging Rows Within a Mapping

  • 7/29/2019 Informatica Transformations

    205/255

    Operation Constant Numeric Value

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    _

    Update DD_UPDATE 1

    Delete DD_DELETE 2

    Reject DD_REJECT 3

    Update Strategy Transformation

  • 7/29/2019 Informatica Transformations

    206/255

    Used to specify how each individual row will be used to updatetarget tables (insert, update, delete, reject)

    Ports All input / output Specify the Update

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Strategy ExpressionIIF or DECODE logicdetermines how tohandle the record

    Example Updating Slowly

    Changing Dimensions

    Update Strategy Expressions

  • 7/29/2019 Informatica Transformations

    207/255

    IIF ( score > 69, DD_INSERT, DD_DELETE )

    Expression is evaluated for each row

    Rows are tagged according to the logic of the expression

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Appropriate SQL (DML) is submitted to the target database:insert, delete or update

    DD_REJECT means the row will not have SQL written for it.Target will not see that row

    Rejected

    rows may be forwarded through Mapping

    Operations for Individual Target Tables

  • 7/29/2019 Informatica Transformations

    208/255

    You can set the following update strategy options:

    1. Insert. Select this option to insert a row into a target table.

    2. Delete. Select this option to delete a row from a table.

    1. Update. You have the following options in this situation:

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    2. Update as Update. Update each row flagged for update if it exists inthe target table.

    3. Update as Insert. Insert each row flagged for update.

    3. Update else Insert. Update the row if it exists. Otherwise,insert it.

    4. Truncate table. Select this option to truncate the targettable before loading data.

  • 7/29/2019 Informatica Transformations

    209/255

    Normalizer Transformation

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Normalizer Transformation

  • 7/29/2019 Informatica Transformations

    210/255

    Is Active and connected transformation

    Is useful to read data from Cobol files

    Is associated with Cobol file

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    records

    Is useful to generate GCID (Generated Column id )

    Example

  • 7/29/2019 Informatica Transformations

    211/255

    Year Account Q1 Q2 Q3 Q4

    2012 Saving 1000 2000 3000 4000

    Year Account Month Amount

    2012 Saving 1 1000

    2012 Saving 2 2000

    2012 Saving 3 3000

    2012 Saving 4 4000

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Normalizer

  • 7/29/2019 Informatica Transformations

    212/255

    Sequence Generator Transformation

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Sequence Generator Transformation

  • 7/29/2019 Informatica Transformations

    213/255

    1. Is Passive and connected

    2. Use the Sequence Generator to create

    unique primary key values, replace missing

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    ,range of numbers.

    3. It has two ports NEXTVAL,CURRVAL.

    4. We can not modify ports

    Creating Keys

  • 7/29/2019 Informatica Transformations

    214/255

    1. You can create primary or foreign key values

    with the Sequence Generator transformation

    by connecting the NEXTVAL port to a target

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    .2. You can use a range of values from 1 to

    9,223,372,036,854,775,807 with the smallest

    interval of 1.

    3. Called as surrogate keys

    Replacing Missing Values

  • 7/29/2019 Informatica Transformations

    215/255

    1. You Use the Sequence Generator transformation toreplace missing keys by using NEXTVAL with the IIF andISNULL functions.

    Example: To replace null values in the ORDER_NO column,you create a Sequence Generator transformation with the

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    transformation. In the Expression transformation, drag theORDER_NO port into the transformation along with anyother necessary ports. Then create an output port,ALL_ORDERS.

    In ALL_ORDERS, you can then enter the following

    expression to replace null orders:IIF( ISNULL( ORDER_NO ), NEXTVAL, ORDER_NO )

    Sequence Generator Transformation

  • 7/29/2019 Informatica Transformations

    216/255

    Generates unique keys for any port on a row

    Ports

    Two predefined output ports,

    NEXTVAL and CURRVA

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    No input ports allowed

    Usage

    Generate sequence numbers

    Shareable across mappings

    Sequence Generator Properties

  • 7/29/2019 Informatica Transformations

    217/255

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

  • 7/29/2019 Informatica Transformations

    218/255

    Union Transformation

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Union TransformationUseful to combine two similar structures

  • 7/29/2019 Informatica Transformations

    219/255

    Types of Groups

    1. Input (two or more)

    Useful to combine two similar structures

    (Number of columns and corresponding data

    types must be same in two source pipelines

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    2. Output

    Union Transformation

  • 7/29/2019 Informatica Transformations

    220/255

    Is active transformation

    Is useful to combine multiple similar input pipelines intoone output pipe line

    Supports heterogeneous data sources

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    It works similar to UNION ALL function in data base

    MFD

  • 7/29/2019 Informatica Transformations

    221/255

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

  • 7/29/2019 Informatica Transformations

    222/255

    Mapping Parameters and Variables

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Mapping Parameters and Variables

  • 7/29/2019 Informatica Transformations

    223/255

    By the end of this section you will understand:

    System variables

    Mapping parameters and variables

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Mapping Parameters and Variables

  • 7/29/2019 Informatica Transformations

    224/255

    Apply to all transformations within one Mapping Represent declared values

    Variables can change in value during run-time

    Parameters remain constant during run-time

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Provide increased development flexibility

    Defined in Mapping menu

    Mapping Parameters and Variables

  • 7/29/2019 Informatica Transformations

    225/255

    Format is $$VariableName or $$ParameterName

    Can be used in pre and post-SQL

    Successful completion of the session the integrationservice stores the variable value in the repository .

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    ar a es can e use n genera ng sequence num ers Variables can be used in incremental loading

    Mapping Parameters and Variables

    Sample declarations

  • 7/29/2019 Informatica Transformations

    226/255

    Set aggregation

    User-defined

    names

    Set datatype

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Declare Mapping Variables and Parameters

    in the Designer Mappings/Mapplets menu

    type

    Set optional

    initial value

    Mapping Parameters and Variables

  • 7/29/2019 Informatica Transformations

    227/255

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Apply parameters or variables in formula

    Functions to Set Mapping Variables

    Variable value

  • 7/29/2019 Informatica Transformations

    228/255

    SETMAXVARIABLE($$Variable

    ,value

    )Sets the specified variable to the higher of the currentvalue or the specified value

    SETMINVARIABLE($$Variable,value)Sets the specified variable to the lower of of the current

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    SETVARIABLE($$Variable,value)Sets the specified variable to the specified value

    SETCOUNTVARIABLE($$Variable)Increases or decreases the specified variable by the

    number of rows leaving the function(+1 for each insertedrow, -1 for each deleted row, no change for updated orrejected rows)

    Parameter FilesYou can specify a parameter

  • 7/29/2019 Informatica Transformations

    229/255

    p y p

    file for a session in the session

    editor

    File extension must be .prm or

    .txt

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Parameter file contains folder.sessionor folder.WF:workflowname.ST:session name and initializes each parameter and

    variable for that session. For example:

    [Production.s_m_MonthlyCalculations]$$State=MA

    $$Time=10/1/2000 00:00:00$InputFile1=sales.txt$DBConnection_target=sales$PMSessionLogFile=D:/session logs/firstrun.txt

    Parameters & Variables Initialization

    Priority

  • 7/29/2019 Informatica Transformations

    230/255

    1. Parameter file

    2. Repository value

    3. Declared initial value

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    4. Default value

    Real Time Examples

  • 7/29/2019 Informatica Transformations

    231/255

    if you want use a constant value in many places ofmapping then parameter or variable can be used

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Real Time Examples

  • 7/29/2019 Informatica Transformations

    232/255

    Variables can be used in Incremental data load

    A typical example of mapping variable in informatica, Lets

    say you get a full file from your source and you are

    supposed to design your mapping to load only incremental

    data, precisely the new and updated records after the

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    previous run are to be processed.Create a mapping variable $$var_date

    Filter source where create/update date > $$var_date.

    Assign $$$sessionstarttime value to var_date. If the

    session is successful, session start time will be saved to the

    variable. In the next run the transaction generated afterthe previous run will only be considered.

    Real Time Examples

  • 7/29/2019 Informatica Transformations

    233/255

    To pass a value from one session to another.

    Use workflow variable to assign the value of mapping

    variable in informatica in any session and you can access it

    in to next session through workflow variable. This can be

    achieved by session properties Pre-session variable

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    assignment , and Pos -session on success variableassignment .

    Real Time Examples

  • 7/29/2019 Informatica Transformations

    234/255

    Easy deployment to production server.

    your informatica code needs to deployed on production

    server and as always you will not have access to

    roduction server, So to de lo the code ro erl we need

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    to provide instructions to deployment team to performcosmetic changes in informatica code. Majority of the

    cases we are not so lucky that deployment team can

    perform those tasks without any support.

    To overcome this problem one can parameterize all the

    stuffs which are subject to change on a different server.

  • 7/29/2019 Informatica Transformations

    235/255

    Mapplets

  • 7/29/2019 Informatica Transformations

    236/255

    By the end of this section you will be familiar with:

    Mapplet Designer

    Mapplet advantages

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Mapplet rules

    Active and Passive Mapplets

    Mapplet Parameters and Variables

    Mapplet Designer

  • 7/29/2019 Informatica Transformations

    237/255

    Mapplet

    Input and Output

    Transformation

    # 209 ,Nilagiri Block ,Adithya Enclave ,Ameerpet,HYD @8801408841,8790998182

    Mapplet Output

    Transformation

    app et es gner o