Professional Documents
Culture Documents
PowerCenter 7 Basics
Education Services
PC6B-20030512
Course Objectives
At the end of this course you will:
Understand how to use all major PowerCenter 7
components
Be able to perform basic Repository administration tasks
Be able to build basic ETL Mappings and Mapplets
Be able to create, run and monitor Workflows
Understand available options for loading target data
Be able to troubleshoot most problems
Decision Support
Data
Warehouse
Other
Aggregate Data
Transaction level data
Cleanse Data
Optimized for Transaction
Consolidate Data
Response Time
Apply Business Rules
De-normalize
Current
Normalized or DeTransform
Normalized data
Extract
ETL
Aggregated data
Historical
Load
PowerCenter Architecture
PowerCenter 7 Architecture
Server
native
native
Targets
Sources
TCP/IP
Repository
Server
Heterogeneous
Targets
TCP/IP
Heterogeneous
Targets
Repository
Agent
native
Repository Designer Workflow Workflow Rep Server
Manager
Manager Monitor Administrative
Repository
Console
Not Shown: Client ODBC Connections for Source and Target metadata
PowerCenter 7 Components
PowerCenter Repository
PowerCenter Repository Server
PowerCenter Client
Designer
Repository Manager
Repository Server Administration Console
Workflow Manager
Workflow Monitor
PowerCenter Server
External Components
Sources
Targets
6
Repository Topics
By the end of this section you will be familiar with:
The purpose of the Repository Server and Agent
The Repository Server Administration Console GUI
interface
The Repository Manager GUI interface
Repository maintenance operations
Security and privileges
Object sharing, searching and locking
Metadata Extensions
7
Repository Server
Each Repository has an independent architecture for the
management of the physical Repository tables
Components: one Repository Server, and a Repository
Agent for each Repository
Server
Repository
Server
Repository
Agent
Repository
Repository Server
Administration Console
Manager
Client overhead for Repository management is greatly
reduced by the Repository Server
Repository
8
The Repository Server runs on the same system running the Repository Agent
Information
Nodes
HTML View
Console Tree
Hypertext Links to
Repository
Maintenance Tasks
11
Repository Management
Perform all Repository
maintenance tasks through
Repository Server from the
Repository Server Administration
Console
Create the Repository
Configuration
Select Repository Configuration
and perform maintenance tasks:
Create
Notify Users
Delete
Propagate
Backup
Register
Copy from
Restore
Disable
Un-Register
Export Connection
Upgrade
Make Global
12
Repository Manager
Use Repository manager to navigate through multiple folders and
repositories. Perform following tasks:
Manage the Repository
Launch Repository Server Administration Console for this
purpose
Navigator
Window
Main Window
Dependency Window
Output Window
14
Managing Privileges
Check box assignment of privileges
16
Folder Permissions
Assign one user as the
folder owner for first tier
permissions
Object Locking
Object Locks preserve Repository integrity
Use the Edit menu for Viewing Locks and Unlocking
Objects
18
Object Searching
Limited to keywords
previously defined in
the Repository
(via Warehouse
Designer)
Search all
19
Object Sharing
Reuse existing objects
Enforces consistency
Decreases development time
Share objects by using copies and shortcuts
COPY
SHORTCUT
Duplicates space
Preserves space
Use Designer
Read
Read/Write
20
metadata lists
21
Design Process
24
Source Analyzer
Designer Tools
Analyzer Window
Navigation
Window
25
Repository
Relational
XML file
Source
Analyzer
Flat file
COBOL file
26
Relational Source
ODBC
Table
View
Synonym
DEF
Repository
Server
TCP/IP
Repository
Agent
native
DEF
Repository
27
28
Flat File
DEF
Fixed Width or
Delimited
Repository
Server
TCP/IP
Repository
Agent
native
DEF
Repository
29
Mapped Drive
NFS Mounting
Local Directory
.DTD File
DEF
DATA
Repository
Server
TCP/IP
Repository
Agent
native
DEF
Repository
31
Repository
Server
.CBL File
DEF
DATA
TCP/IP
Repository
Agent
native
DEF
Repository
32
33
34
35
36
Database
ODBC
Repository
Server
DEF
TCP/IP
Table
View
Synonym
Repository
Agent
native
Repository DEF
37
39
40
DEF
DEF
DEF
Execute SQL
via
Designer
LOGICAL
PHYSICAL
Target database
tables
41
Transformation Concepts
By the end of this section you will be familiar with:
Transformation types and views
Transformation calculation error treatment
Null data treatment
Informatica data types
Expression transformation
Expression Editor
Informatica Functions
Expression validation
43
Transformation Types
Informatica PowerCenter 7 provides 23 objects for data
transformation
Aggregator: performs aggregate calculations
Application Source Qualifier: reads Application object sources as ERP
Transformation Types
Router: splits rows conditionally
Sequence Generator: generates unique ID values
Sorter: sorts data
Source Qualifier: reads data from Flat File and Relational Sources
Stored Procedure: calls a database stored procedure
Transaction Control: Defines Commit and Rollback transactions
Union: Merges data from different databases
Update Strategy: tags rows for insert, update, delete, reject
XML Generator: Reads data from one or more Input ports and
outputs XML through single output port
XML Parser: Reads XML from one or more Input ports and outputs
data through single output port
XML Source Qualifier: reads XML data
45
Transformation Views
A transformation has
three views:
Iconized - shows the
transformation in
relation to the rest of
the mapping
Normal - shows the
flow of data through
the transformation
Edit - shows
transformation ports
and properties; allows
editing
46
Edit Mode
Allows users with folder write permissions to change
or create transformation ports and properties
Define port level handling
Define transformation
level properties
Enter comments
Make reusable
Switch
between
transformations
47
Expression Transformation
Perform calculations using non-aggregate functions
(row level)
Passive Transformation
Connected
Ports
Mixed
Variables allowed
Create expression in an
output or variable port
Usage
Perform majority of
data manipulation
48
Expression Editor
An expression formula is a calculation or conditional statement
Used in Expression, Aggregator, Rank, Filter, Router, Update Strategy
Performs calculation based on ports, functions, operators, variables,
literals, constants and return values from other transformations
49
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
50
Informatica Functions
TO_CHAR (numeric)
TO_DATE
TO_DECIMAL
TO_FLOAT
TO_INTEGER
TO_NUMBER
Conversion Functions
ADD_TO_DATE
DATE_COMPARE
DATE_DIFF
GET_DATE_PART
LAST_DAY
ROUND (date)
SET_DATE_PART
TO_CHAR (date)
TRUNC (date)
Date Functions
Informatica Functions
ABS
CEIL
CUME
EXP
FLOOR
LN
LOG
MOD
MOVINGAVG
MOVINGSUM
POWER
ROUND
SIGN
SQRT
TRUNC
Numerical Functions
Used to perform mathematical
operations on numeric data
Scientific Functions
Used to calculate
geometric values
of numeric data
COS
COSH
SIN
SINH
TAN
TANH
52
Informatica Functions
ERROR
ABORT
DECODE
IIF
Special Functions
Used to handle specific conditions within a session;
search for certain values; test conditional
statements
IIF(Condition,True,False)
ISNULL
IS_DATE
IS_NUMBER
IS_SPACES
SOUNDEX
METAPHONE
Test Functions
Used to test if a lookup result is null
Used to validate data
Encoding Functions
Used to encode string values
53
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)
54
Variable Ports
Use to simplify complex expressions
e.g. - create and store a depreciation formula to be
55
Native
TRANSFORMATION DATATYPES
Transformation
Native
56
Datatype Conversions
Integer
Decimal
Double
Char
Integer
Decimal
Double
Char
Date
Raw
Date
Raw
Mappings
By the end of this section you will be familiar with:
Mapping components
Source Qualifier transformation
Mapping validation
Data flow rules
System Variables
Mapping Parameters and Variables
58
Mapping Designer
Transformation Toolbar
Mapping List
Iconized Mapping
59
DISALLOWED
Active
Passive
T
Example holds true with Normalizer in lieu of Source Qualifier. Exceptions are:
Mapplet Input and Joiner transformations
61
Connection Validation
Examples of invalid connections in a Mapping:
Connecting ports with incompatible datatypes
Connecting output ports to a Source
Connecting a Source to anything but a Source
62
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
Mappings are always validated when saved; can be validated
without being saved
Output Window will always display reason for invalidity
63
Workflows
By the end of this section, you will be familiar with:
The Workflow Manager GUI interface
Workflow Schedules
Setting up Server Connections
Relational, FTP and External Loader
Workflow
Designer
Tools
Workspace
Navigator
Window
Output Window
Status Bar
65
Task Developer
Create Session, Shell Command and Email tasks
Tasks created in the Task Developer are reusable
Worklet Designer
Creates objects that represent a set of tasks
Worklet objects are reusable
66
Workflow Structure
A Workflow is 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
Link
Start
Task
Session
Task
67
Session Tasks
68
Server Connections
Configure Server data access connections
Used in Session Tasks
Configure:
1. Relational
2. MQ Series
3. FTP
4. Custom
5. External Loader
69
70
FTP Connection
Create an FTP connection
Instructions to the Server to ftp flat files
Used in Session Tasks
72
73
Task Developer
Create basic Reusable building blocks to use in any Workflow
Reusable Tasks
Session
Command
Email
74
Session Task
Server instructions to runs 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 a
Workflow (or
Worklet)
If configured in
the Task
Developer,
the Session Task
is reusable
(optional)
75
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 configured in the Task Developer, the Command Task is reusable
(optional)
76
Command Task
77
78
Developing Workflows
Create a new Workflow in the Workflow Designer
Customize
Workflow name
Select a
Server
79
Workflow Properties
Customize Workflow
Properties
Workflow log displays
Select a Workflow
Schedule (optional)
May be reusable or
non-reusable
80
Workflows Properties
Create a User-defined Event
which can later be used
with the Raise Event Task
81
Save
Start Workflow
82
Link 3
Link 2
83
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
84
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
85
86
87
88
89
90
91
92
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
93
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
Task view
94
Monitoring Workflows
Perform operations in the Workflow Monitor
95
Monitoring Workflows
Task View
Status Bar
Start
Completion
Task
Workflow
Worklet
Time
Time
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
98
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
99
Debugger Interface
Debugger windows & indicators
Debugger Mode
indicator
Solid yellow
arrow Current
Transformation
indicator
Flashing
yellow
SQL
indicator
Transformation
Instance
Data window
Debugger
Log tab
Session Log tab
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
101
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
102
Informatica Functions
Aggregate Functions
AVG
COUNT
FIRST
LAST
MAX
MEDIAN
MIN
PERCENTILE
STDDEV
SUM
VARIANCE
Aggregate Expressions
Aggregate
functions are
supported
only
in the
Aggregator
Transformation
Conditional
Aggregate
expressions
are supported
Aggregator Properties
Sorted Input Property
Instructs the
Aggregator to
expect the data
to be sorted
Set Aggregator
cache sizes (on
Informatica Server
machine)
105
Sorted Data
The Aggregator can handle sorted or unsorted data
Sorted data can be aggregated more efficiently, decreasing
total processing time
106
Incremental Aggregation
Trigger in Session
Properties,
Performance Tab
MTD
calculation
107
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
108
Homogeneous Joins
Joins that can be performed with a SQL SELECT statement:
Source Qualifier contains a SQL join
109
Heterogeneous Joins
Joins that cannot be done with a SQL statement:
An Oracle table and a Sybase table
110
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
111
Joiner Conditions
Multiple
join
conditions
are supported
112
Joiner Properties
Join types:
Normal
(inner)
Master outer
Detail outer
Full outer
Set
Joiner Cache
113
Mid-Mapping Join
The Joiner does not accept input in the following situations:
114
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
115
Lookup Transformation
By the end of this section you will be familiar with:
Lookup principles
Lookup properties
Lookup conditions
Lookup techniques
Caching considerations
116
Lookup transformation
Return value(s)
117
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
118
Lookup Properties
Override
Lookup SQL
option
Toggle
caching
Native
Database
Connection
Object name
119
Make cache
persistent
Set
Lookup
cache sizes
120
Lookup Conditions
Multiple conditions are supported
121
Uncached
Each Mapping row needs one SQL SELECT
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
123
Target Properties
Session Task
Select target
instance
Row loading
operations
Error handling
Properties Tab
124
Constraint-based Loading
Maintains referential integrity in the Targets
pk1
fk1, pk2
fk2
pk1
fk1, pk2
fk2
Example 1
With only One Active source, rows
for Targets 1-3 will be loaded
properly and maintain referential
integrity
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
126
inserted
128
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
129
130
131
System Variables
SYSDATE
$$$SessStartTime
SESSSTARTTIME
132
133
Set the
appropriate
aggregation
type
Set optional
Initial Value
135
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
136
Row keys
(passed to Lookup)
IIF ( ISNULL(customer_id),:lkp.MYLOOKUP(order_no))
Lookup function
137
Condition
(true for 2 percent of all
rows)
Lookup
(called only when condition is
true)
UNCONNECTED LOOKUP
Heterogeneous Targets
By the end of this section you will be familiar with:
Heterogeneous target types
Heterogeneous target limitations
Target conversions
140
141
Oracle table
Oracle table
Flat file
142
143
CAUTION: If target definition datatypes are not compatible with datatypes in newly
selected database type, modify the target definition
144
Mapplet Designer
Mapplet
Transformation
Icons
Mapplet Output
Transformation
145
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
146
147
Passive
Active
Multiple Passive
Mapplets can populate
the same target
instance
148
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
149
Reusable Transformations
Define once - reuse many times
Reusable Transformations
150
Place a
check in the
Make
reusable box
This action
is not
reversible
151
Passive Transformation
Connected
Ports
Two predefined
output ports,
NEXTVAL and
CURRVAL
No input ports allowed
Usage
Generate sequence numbers
Shareable across mappings
152
Number
of
Cached
Values
153
Dynamic Lookup
By the end of this section you will be familiar with:
Dynamic lookup theory
Dynamic lookup advantages
Dynamic lookup rules
154
Make cache
persistent
Cache File Name Prefix
Reuse cache by
name for another
similar business
purpose
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
156
158
160
161
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
164
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
165
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
166
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
167
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
168
Passive Transformation
Connected/Unconnected
Ports
Mixed
R designates return
value port of an
unconnected
transformation
Usage
Perform transformation
logic outside PowerMart /
PowerCenter
169
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
170
Passive Transformation
Connected Mode Only
Ports
Input and Output
Properties
Continue
Commit Before
Commit After
Rollback Before
Rollback After
171
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
173
Packaged
Analytic Solutions
Custom Built
Analytic Solutions
174
Finance
Human
Resources
Supply Chain
Sales
G/L
Compensation
Planning
Marketing
Receivables
Scorecard
Sourcing
Service
Payables
Inventory
Web
Profitability
Quality
Common Dimensions
Customer
Product
Organization
Supplier
Time
Geography
Employee
175
Informatica Warehouse
Advanced
Calculation
Engine
Analytic
Data Model
Warehouse Loader
Transform
standardization
Source independent interface
Analytic Bus
Extract
Load
SAP
Load
Structural/Functional Knowledge of
Sources
Business Adapters
dimensions
ORCL
i2
SEBL
PSFT
Custom
statistical)
176
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
178