P. 1
PC7 Training Seepz02

PC7 Training Seepz02

|Views: 295|Likes:
Published by api-26996193

More info:

Published by: api-26996193 on Oct 14, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PPT, PDF, TXT or read online from Scribd
See more
See less

05/29/2015

pdf

text

original

Workflows Properties

Create a User-defined Event which can later be used with the Raise Event Task

Define Workflow Variables that can be used in later Task objects (example: Decision Task)

1

Building Workflow Components
 Add Sessions and other Tasks to the Workflow  Connect all Workflow components with Links  Save the Workflow  Start the Workflow
Save Start Workflow

Sessions in a Workflow can be independently executed

2

Workflow Designer - Links
 Required to connect Workflow Tasks  Can be used to create branches in a Workflow  All links are executed -- unless a link condition is used which makes a link false
Link 1 Link 3

Link 2 3

Session Tasks
After this section, you will be familiar with:  How to create and configure Session Tasks  Session Task properties  Transformation property overrides  Reusable vs. non-reusable Sessions  Session partitions

4

Session Task
 Created to execute the logic of a mapping (one mapping only)  Session Tasks can be created in the Task Developer (reusable) or Workflow Developer (Workflow-specific)  Steps to create a Session Task
• Select the Session button from the Task Toolbar or • Select menu Tasks | Create

Session Task Bar Icon

5

Session Task - General

6

Session Task - Properties

7

Session Task – Config Object

8

Session Task - Sources

9

Session Task - Targets

10

Session Task - Transformations
Allows overrides of some transformation properties Does not change the properties in the Mapping

11

Session Task - Partitions

12

Monitor Workflows
By the end of this section you will be familiar with:  The Workflow Monitor GUI interface  Monitoring views  Server monitoring modes  Filtering displayed items  Actions initiated from the Workflow Monitor  Truncating Monitor Logs

13

Monitor Workflows
 The Workflow Monitor is the tool for monitoring Workflows and Tasks  Review details about a Workflow or Task in two views
• Gantt Chart view • Task view

Gantt Chart view

Task view

14

Monitoring Workflows
 Perform operations in the Workflow Monitor
• • • • Restart -- restart a Task, Workflow or Worklet Stop -- stop a Task, Workflow, or Worklet Abort -- abort a Task, Workflow, or Worklet Resume -- resume a suspended Workflow after a failed Task is corrected

 View Session and Workflow logs  Abort has a 60 second timeout
• If the Server has not completed processing and

committing data during the timeout period, the threads and processes associated with the Session are killed
15

Stopping a Session Task means the Server stops reading data

Monitoring Workflows
Task View
Start Completion Task Workflow Worklet Time Time

Status Bar

Start, Stop, Abort, Resume Tasks,Workflows and Worklets

16

Monitor Window Filtering
Task View provides filtering
Monitoring filters can be set using drop down menus Minimizes items displayed in Task View

Right-click on Session to retrieve the Session Log (from the Server to the local PC Client) 17

Debugger
By the end of this section you will be familiar with:  Creating a Debug Session  Debugger windows & indicators  Debugger functionality and options  Viewing data with the Debugger  Setting and using Breakpoints  Tips for using the Debugger

18

Debugger Features
 Debugger is a Wizard driven tool
• • • • • View source / target data View transformation data Set break points and evaluate expressions Initialize variables Manually change variable values

 Debugger is
• Session Driven • Data can be loaded or discarded • Debug environment can be saved for later use

19

Debugger Interface
Debugger windows & indicators
Debugger Mode indicator

Solid yellow arrow Current Transformation indicator Flashing yellow SQL indicator

Debugger Log tab Session Log tab Target Data window

Transformation Instance Data window

20

Filter Transformation
Drops rows conditionally

Active Transformation Connected Ports • All input / output Specify a Filter condition Usage • Filter rows from flat file sources • Single pass source(s) into multiple targets
21

Aggregator Transformation
Performs aggregate calculations

Active Transformation Connected Ports • Mixed • Variables allowed • Group By allowed Create expressions in output or variable ports Usage • Standard aggregations
22

Informatica Functions
Aggregate Functions
AVG COUNT FIRST LAST MAX MEDIAN MIN PERCENTILE STDDEV SUM VARIANCE

 Return summary values for non-null data in selected ports  Use only in Aggregator transformations  Use in output ports only  Calculate a single value (and row) for all records in a group  Only one aggregate function can be nested within an aggregate function  Conditional statements can be used with these functions
23

Aggregate Expressions
Aggregate functions are supported only in the Aggregator Transformation

Conditional Aggregate expressions are supported

Conditional SUM format: SUM(value, condition)
24

Aggregator Properties
Sorted Input Property

Instructs the Aggregator to expect the data to be sorted

Set Aggregator cache sizes (on Informatica Server machine)
25

Sorted Data
 The Aggregator can handle sorted or unsorted data
• Sorted data can be aggregated more efficiently, decreasing total processing time

 The Server will cache data from each group and release the cached data -- upon reaching the first record of the next group  Data must be sorted according to the order of the Aggregator “Group By” ports  Performance gain will depend upon varying factors

26

Incremental Aggregation
Trigger in Session Properties, Performance Tab MTD calculation

 Cache is saved into $PMCacheDir: aggregatorname.DAT aggregatorname.IDX  Upon next run, files are overwritten with new cache information
Example: When triggered, PowerCenter Server will save new MTD totals. Upon next run (new totals), Server will subtract old totals; difference will be passed forward
Best Practice is to copy these files in case a rerun of data is ever required. Reinitialize when no longer needed, e.g. – at the beginning new month processing

27

Joiner Transformation
By the end of this section you will be familiar with:  When to use a Joiner Transformation  Homogeneous Joins  Heterogeneous Joins  Joiner properties  Joiner Conditions  Nested joins

28

Homogeneous Joins
Joins that can be performed with a SQL SELECT statement:
 Source Qualifier contains a SQL join

 Tables on same database server (or are synonyms)  Database server does the join “work”  Multiple homogenous tables can be joined

29

Heterogeneous Joins
Joins that cannot be done with a SQL statement:
 An Oracle table and a Sybase table

 Two Informix tables on different database servers  Two flat files  A flat file and a database table

30

Joiner Transformation
Performs heterogeneous joins on records from different databases or flat file sources
Active Transformation Connected Ports • All input or input / output • “M” denotes port comes from master source Specify the Join condition Usage • Join two flat files • Join two tables from different databases • Join a flat file with a relational table

31

Joiner Conditions

Multiple join conditions are supported

32

Joiner Properties
Join types:
• “Normal” (inner) • Master outer • Detail outer • Full outer Set Joiner Cache

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

33

Mid-Mapping Join
The 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 Normalizer Both input pipelines begin with the same Joiner Either input pipeline contains an Update Strategy

34

Sorter Transformation
 Can sort data from relational tables or flat files  Sort takes place on the Informatica Server machine  Multiple sort keys are supported  The Sorter transformation is often more efficient than a sort performed on a database with an ORDER BY clause

35

Lookup Transformation
By the end of this section you will be familiar with:  Lookup principles  Lookup properties  Lookup conditions  Lookup techniques  Caching considerations

36

How a Lookup Transformation Works
 For each Mapping row, one or more port values are looked up in a database table  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 Return value(s)

37

Lookup Transformation
Looks up values in a database table and provides data to other components in a Mapping
Passive Transformation Connected / Unconnected Ports • Mixed • “L” denotes Lookup port • “R” denotes port used as a return value (unconnected Lookup only) Specify the Lookup Condition Usage • Get related values • Verify if records exists or if data has changed

38

Lookup Properties
Override Lookup SQL option Toggle caching Native Database Connection Object name

39

Additional Lookup Properties
Set cache directory

Make cache persistent

Set Lookup cache sizes

40

Lookup Conditions
Multiple conditions are supported

41

To Cache or not to Cache?
Caching can significantly impact performance  Cached
• Lookup table data is cached locally on the Server • Mapping rows are looked up against the cache • Only one SQL SELECT is needed

 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 lookup
42

Target Options
By the end of this section you will be familiar with:  Row type indicators  Row operations at load time  Constraint-based loading considerations  Rejected row handling options

43

Target Properties
Session Task Select target instance Row loading operations Error handling

Properties Tab
44

Constraint-based Loading
Maintains referential integrity in the Targets
pk1 fk1, pk2

Example 1
With only One Active source, rows for Targets 1-3 will be loaded properly and maintain referential integrity

fk2

pk1 fk1, pk2 fk2

Example 2
With Two Active sources, it is not possible to control whether rows for Target 3 will be loaded before or after those for Target 2

The following transformations are ‘Active sources’: Advanced External Procedure, Source Qualifier, Normalizer, Aggregator, Sorter, Joiner, Rank, Mapplet (containing any of the previous transformations)

45

Update Strategy Transformation
By the end of this section you will be familiar with:  Update Strategy functionality  Update Strategy expressions  Refresh strategies  Smart aggregation

46

Update Strategy Transformation
Used to specify how each individual row will be used to update target tables (insert, update, delete, reject) Active Transformation Connected Ports • All input / output Specify the Update Strategy Expression Usage • Updating Slowly Changing Dimensions • IIF or DECODE logic determines how to handle the record
47

Target Refresh Strategies
 Single snapshot: Target truncated, new records

inserted

 Sequential snapshot: new records inserted

 Incremental: Only new records are inserted.

Records already present in the target are ignored inserted. Records already present in the target are updated

 Incremental with Update: Only new records are

48

Router Transformation
Rows sent to multiple filter conditions

Active Transformation Connected Ports • All input/output • Specify filter conditions for each Group Usage • Link source data in one pass to multiple filter conditions

49

Router Transformation in a Mapping

50

Parameters and Variables
By the end of this section you will understand:  System Variables  Creating Parameters and Variables  Features and advantages  Establishing values for Parameters and Variables

51

System Variables
SYSDATE

 Provides current datetime on the Informatica Server machine
• Not a static value

$$$SessStartTime

 Returns the system date value as a string. Uses system clock on machine hosting Informatica Server
• format of the string is database type dependent • Used in SQL override • Has a constant value

SESSSTARTTIME

 Returns the system date value on the Informatica Server
• Used with any function that accepts transformation date/time data types • Not to be used in a SQL override • Has a constant value

52

Mapping Parameters and Variables
 Apply to all transformations within one Mapping  Represent declared values  Variables can change in value during run-time  Parameters remain constant during run-time  Provide increased development flexibility  Defined in Mapping menu  Format is $$VariableName or $$ParameterName

53

Mapping Parameters and Variables
Sample declarations
Userdefined names Set the appropriate aggregation type

Set optional Initial Value

Declare Variables and Parameters in the Designer Mappings menu

54

Functions to Set Mapping Variables
 SetCountVariable -- Counts the number of evaluated rows and increments or decrements a mapping variable for each row  SetMaxVariable -- Evaluates the value of a mapping variable to the higher of two values  SetMinVariable -- Evaluates the value of a mapping variable to the lower of two values  SetVariable -- Sets the value of a mapping variable to a specified value

55

Unconnected Lookup
 Will be physically “unconnected” from other transformations
• There can be NO data flow arrows leading to or from an unconnected Lookup
Lookup function can be set within any transformation that supports expressions Lookup data is called from the point in the Mapping that needs it

Function in the Aggregator calls the unconnected Lookup
56

Conditional Lookup Technique
Two requirements:  Must be Unconnected (or “function mode”) Lookup  Lookup function used within a conditional statement
Condition Row keys (passed to Lookup)

IIF ( ISNULL(customer_id),:lkp.MYLOOKUP(order_no))
Lookup function

 Conditional statement is evaluated for each row  Lookup function is called only under the pre-defined condition

57

Conditional Lookup Advantage
 Data lookup is performed only for those rows which require it. Substantial performance can be gained
EXAMPLE: A Mapping will process 500,000 rows. For two percent of those rows (10,000) the item_id value is NULL. Item_ID can be derived from the SKU_NUMB.

IIF ( ISNULL(item_id), :lkp.MYLOOKUP (sku_numb))

Condition (true for 2 percent of all rows)

Lookup (called only when condition is true)

Net savings = 490,000 lookups
58

Connected vs. Unconnected Lookups
CONNECTED LOOKUP UNCONNECTED LOOKUP

Part of the mapping data flow Returns multiple values (by linking output ports to another transformation) Executed for every record passing through the transformation More visible, shows where the lookup values are used Default values are used

Separate from the mapping data flow Returns one value (by checking the Return (R) port option for the output port that provides the return value) Only executed when the lookup function is called Less visible, as the lookup is called from an expression within another transformation Default values are ignored
59

Heterogeneous Targets
By the end of this section you will be familiar with:  Heterogeneous target types  Heterogeneous target limitations  Target conversions

60

Definition: Heterogeneous Targets
Supported target definition types:  Relational database  Flat file  XML  ERP (SAP BW, PeopleSoft, etc.) A heterogeneous target is where the target types are different or the target database connections are different within a single Session Task
61

Step One: Identify Different Target Types

Oracle table

Tables are EITHER in two different databases, or require different (schemaspecific) connect strings One target is a flatfile load

Oracle table

Flat file

62

Step Two: Different Database Connections

The two database connections WILL differ Flatfile requires separate location information

63

Target Type Override (Conversion)
Example: Mapping has SQL Server target definitions. Session Task can be set to load Oracle tables instead, using an Oracle database connection.

Only the following overrides are supported:  Relational target to flat file target  Relational target to any other relational database type  SAP BW target to a flat file target

CAUTION: If target definition datatypes are not compatible with datatypes in newly selected database type, modify the target definition

64

Mapplet Designer

Mapplet Designer Tool

Mapplet Transformation Icons

Mapplet Output Transformation
65

Mapplet Advantages
 Useful for repetitive tasks / logic  Represents a set of transformations  Mapplets are reusable  Use an ‘instance’ of a Mapplet in a Mapping  Changes to a Mapplet are inherited by all instances  Server expands the Mapplet at runtime

66

Active and Passive Mapplets
 Passive Mapplets contain only passive transformations  Active Mapplets contain one or more active transformations

CAUTION: changing a passive Mapplet into an active Mapplet may invalidate Mappings which use that Mapplet • Do an impact analysis in Repository Manager first

67

Using Active and Passive Mapplets

Passive

Multiple Passive Mapplets can populate the same target instance

Active

Multiple Active Mapplets or Active and Passive Mapplets cannot populate the same target instance

68

Reusable Transformations
By the end of this section you will be familiar with:  Reusable transformation advantages  Reusable transformation rules  Promoting transformations to reusable  Copying reusable transformations

69

Reusable Transformations
 Define once - reuse many times  Reusable Transformations
• • • • • Can be a copy or a shortcut Edit Ports only in Transformation Developer Can edit Properties in the mapping Instances dynamically inherit changes Be careful: It is possible to invalidate mappings by changing reusable transformations

 Transformations that cannot be made reusable
• Source Qualifier • ERP Source Qualifier • Normalizer used to read a Cobol data source

70

Promoting a Transformation to Reusable

Place a check in the “Make reusable” box

This action is not reversible

71

Sequence Generator Transformation
Generates unique keys for any port on a row

Passive Transformation Connected Ports • Two predefined output ports, NEXTVAL and CURRVAL • No input ports allowed Usage • Generate sequence numbers • Shareable across mappings
72

Sequence Generator Properties

Number of Cached Values

73

Dynamic Lookup
By the end of this section you will be familiar with:  Dynamic lookup theory  Dynamic lookup advantages  Dynamic lookup rules

74

Additional Lookup Cache Options

Make cache persistent Cache File Name Prefix
• Reuse cache by name for another similar business purpose

Recache from Database
• Overrides other settings and Lookup data is refreshed

Dynamic Lookup Cache
• Allows a row to know about the handling of a previous row
75

Persistent Caches
 By default, Lookup caches are not persistent  When Session completes, cache is erased  Cache can be made persistent with the Lookup properties  When Session completes, the persistent cache is stored on server hard disk files  The next time Session runs, cached data is loaded fully or partially into RAM and reused  Can improve performance, but “stale” data may pose a problem
76

Dynamic Lookup Cache Advantages
 When the target table is also the Lookup table, cache is changed dynamically as the target load rows are processed in the mapping  New rows to be inserted into the target or for update to the target will affect the dynamic Lookup cache as they are processed  Subsequent rows will know the handling of previous rows  Dynamic Lookup cache and target load rows remain synchronized throughout the Session run
77

Update Dynamic Lookup Cache
 NewLookupRow port values
• 0 – static lookup, cache is not changed • 1 – insert row to Lookup cache • 2 – update row in Lookup cache

 Does NOT change row type  Use the Update Strategy transformation before or after Lookup, to flag rows for insert or update to the target  Ignore NULL Property
• Per port • Ignore NULL values from input row and update the cache using only with non-NULL values from input
78

Example: Dynamic Lookup Configuration
Router Group Filter Condition should be: NewLookupRow = 1

This allows isolation of insert rows from update rows
79

Concurrent and Sequential Workflows
By the end of this section you will be familiar with:  Concurrent Workflows  Sequential Workflows  Scheduling Workflows  Stopping, aborting, and suspending Tasks and Workflows

80

Multi-Task Workflows - Sequential
Tasks can be run sequentially:

Tasks shows are all Sessions, but they can also be other Tasks, such as Commands, Timer or Email Tasks

81

Multi-Task Workflows - Concurrent
Tasks can be run concurrently:

Tasks shows are all Sessions, but they can also be other Tasks such as Commands, Timer or Email Tasks.
82

Multi-Task Workflows - Combined
 Tasks can be run in a combination concurrent and sequential pattern within one Workflow:

 Tasks shows are all Sessions, but they can also be other Tasks such as Commands, Timer or Email Tasks
83

Additional Transformations
By the end of this section you will be familiar with:  The Rank transformation  The Normalizer transformation  The Stored Procedure transformation  The External Procedure transformation  The Advanced External Procedure transformation

84

Rank Transformation
Filters the top or bottom range of records

Active Transformation Connected Ports • Mixed • One pre-defined output port RANKINDEX • Variables allowed • Group By allowed Usage • Select top/bottom • Number of records
85

Normalizer Transformation
Normalizes records from relational or VSAM sources

Active Transformation Connected Ports • Input / output or output Usage • Required for VSAM Source definitions • Normalize flat file or relational source definitions • Generate multiple records from one record

86

Normalizer Transformation
Turn one row
YEAR,ACCOUNT,MONTH1,MONTH2,MONTH3, … MONTH12
1997,Salaries,21000,21000,22000,19000,23000,26000,29000,29000,34000,34000,40000,4500 0 1997,Benefits,4200,4200,4400,3800,4600,5200,5800,5800,6800,6800,8000,9000 1997,Expenses,10500,4000,5000,6500,3000,7000,9000,4500,7500,8000,8500,8250

Into multiple rows

87

Stored Procedure Transformation
Calls a database stored procedure

Passive Transformation Connected/Unconnected Ports • Mixed • “R” denotes port will return a value from the stored function to the next transformation Usage • Perform transformation logic outside PowerMart / PowerCenter
88

External Procedure Transformation (TX)
Calls a passive procedure defined in a dynamic linked library (DLL) or shared library

Passive Transformation Connected/Unconnected Ports • Mixed • “R” designates return value port of an unconnected transformation Usage • Perform transformation logic outside PowerMart / PowerCenter

Option to allow partitioning

89

Advanced TX Transformation
Calls an active procedure defined in a dynamic linked library (DLL) or shared library

Active Transformation Connected Mode only Ports • Mixed Usage • Perform transformation logic outside PowerMart / PowerCenter • Sorting, Aggregation Option to allow partitioning
90

Transaction Control Transformation
Allows custom commit types (source- or targetbased) and user-defined conditional commits

Passive Transformation Connected Mode Only Ports • Input and Output Properties • Continue • Commit Before • Commit After • Rollback Before • Rollback After
91

Transaction Control Functionality
 Commit Types • Target Based Commit Commit Based on “approximate” number of records written to target • Source Based Commit – Ensures that a source record is committed in all targets • User Defined Commit – Uses Transaction Control Transform to specify commits and rollbacks in the mapping based on conditions  Set the Commit Type (and other specifications) in the Transaction Control Condition
92

Versioning
 View Object Version Properties  Track Changes to an Object  Check objects “in” and “out”  Delete or Purge Object version  Apply Labels and Run queries  Deployment Groups

93

Informatica Business Analytics Suite
Modular Plug-&-Play Approach

Packaged Analytic Solutions

Custom Built Analytic Solutions
94

Informatica Warehouses / Marts
Informatica Warehouse™
Customer Relationship Sales Marketing Service Web Finance G/L Receivables Payables Profitability Human Resources Compensation Scorecard Supply Chain Planning Sourcing Inventory Quality

Common Dimensions
Customer Product Time Supplier Geography Organization Employee
95

Inside the Informatica Warehouse
Business Intelligence
 Business Adapters™ (Extract)

Informatica Warehouse™ Advanced Analytic Calculation Data Model Engine
Load


Data Source Connectivity with Minimal Load Structural/Functional Knowledge of Sources Transaction consolidation and standardization Source independent interface Type I, II slowly changing dimensions History and changed record tracking Industry Best Practice Metrics Process-centric model & conformed dimensions Pre-aggregations for rapid query response Complex calculation metrics (e.g. statistical)

Analytic Bus™ (Transform)

• •

Warehouse Loader™ Analytic Bus™ Business Adapters™

Warehouse Loader (Load)

Transform

• •

Analytic Data Model

Extract

• •

Advanced Calculation Engine


SAP ORCL i2 SEBL PSFT Custom

96

PowerConnect Products
Family of enterprise software products that allow companies to directly source and integrate ERP, CRM, real-time message queue, mainframe, AS/400, remote data and metadata with other enterprise data
          PowerConnect for MQSeries (real time) PowerConnect for TIBCO (real time) PowerConnect for PeopleSoft PowerConnect for SAP R/3 PowerConnect for SAP BW PowerConnect for Siebel PowerConnect for Mainframe PowerConnect for AS/400 PowerConnect for Remote Data PowerConnect SDK
97

98

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->