Escolar Documentos
Profissional Documentos
Cultura Documentos
DESIGNER
Transformation The transfer of data is called transformation A transformation is a repository object that generates, modifies, or passes data The Designer provides a set of transformations that perform specific functions Transformations in a mapping represent the operations the Informatica Server performs on the data. Data passes into and out of transformations through ports that you link in a mapping or mapplet. :
Transformation
Transformations can be active or passive An active transformation can change the number of rows that pass through it A passive transformation does not change the number of rows that pass through it, Transformations can be connected to the data flow An unconnected transformation is not connected to other transformations in the mapping It :is called within another transformation, and returns a value to that transformation.
Joiner Transformation
The Joiner transformation joins two related heterogeneous sources . . The combination of sources can be varied The Joiner transformation uses a condition that matches one or more pairs of ports between the two sources.
Joiner transformation
You can use the following sources: Two relational tables existing in separate databases Two flat files in potentially different file systems . Two different ODBC sources A relational table and an XML source A relational table and a flat file source Two instances of the same XML source
Drag all the desired input/output ports from the first source into the Joiner transformation
Edit transformation
Double-click the title bar of the Joiner transformation to open the Edit Transformations dialog box
Port tab
Select the Condition tab and set the condition Click the Add button to add a condition.
Joiner in Mapping
The Joiner transformation requires two input transformations from two separate pipelines. An input transformation is any transformation connected to the input ports of the current transformation. In the example, the Aggregator transformation and the Source Qualifier transformation are the input transformations for the Joiner transformation
You cannot use a Joiner transformation in the following situations: Both input pipelines originate from the same Source Qualifier transformation Both input pipelines originate from the same Normalizer transformation. Both input pipelines originate from the same Joiner transformation Either input pipeline contains an Update Strategy transformation
You connect a Sequence Generator transformation directly before the Joiner transformation Configuring the Joiner Transformation Master and detail source Type of join Condition of the join
The Joiner transformation supports the following join types Normal (Default) Master Outer Detail Outer Full Outer An example of a partial mapping with two Joiner transformations in the same target load order group and three pipelines to process the data in the correct order:
The Source Qualifier represents the rows that the Informatica Server reads when it executes a session.
When you add a relational or a flat file source definition to a mapping, you need to connect it to a Source Qualifier transformation
For relational sources, the Informatica Server generates a query for each Source Qualifier when it runs a session. The default query is a SELECT statement for each source column used in the mapping The Informatica Server reads only the columns in Source Qualifier that are connected to another transformation.
Click Cancel to exit Note: If you do not cancel the SQL query, the Informatica Server overrides the default query with the custom SQL query
Sorted port
Post sql
Pre sql
SQL Query
You can give query in the Source Qualifier transformation From the Properties tab, select SQL Query The SQL Editor displays. Click Generate SQL.
Sql query
Join condition
Sorted Ports
For information about using Sorted Ports to optimize join performance,
Sorted Ports
Aggregator Transformation
The Aggregator is an active transformation
The Aggregator transformation allows you to perform aggregate calculations, such as averages and sums. The Aggregator transformation is unlike the Expression transformation, in that You can use the Aggregator transformation to perform calculations on groups The Expression transformation permits you to perform calculations on a row-by-row basis only. you can use conditional clauses to filter rows, providing more flexibility than SQL language. The Informatica Server performs aggregate calculations as it reads, and stores necessary data group and row data in an aggregate cache.
Aggregator Transformation
On the aggregator transformation double clik edit transfromation
Edit transformation Aggregator Transformation
Aggregate cache
Aggregate expression
An aggregate expression can include conditional clauses and non-aggregate functions. It can also include one aggregate function nested within another aggregate function, such as:
Aggregate Functions:
The aggregate functions can be used within an Aggregator transformation You can nest one aggregate function within another aggregate function. AVG COUNT
Aggregate Functions
FIRST LAST MEDIAN MAX MIN STDDEV PERCENTILE SUM VARIANCE
Conditional Clauses
You can use conditional clauses in the aggregate expression to reduce the number of rows used in the aggregation. Setting condition to aggregator transformation is as follows :
Edit transformation
Output port
Click on expression tab expression edit transformation opens for give any condition clauses .
Click the group by option for each column you want the Aggregator to use in creating groups.
Group port
Click Add and enter a name and data type for the aggregate expression port. Make the port an output port by clearing Input (I). Add default values for specific ports as necessary Select the Properties tab
Properties tab
Cache Directory
Tracing Level
Sorted Input
Rank transformation
The Rank transformation allows you to select only the top or bottom rank of data. The Rank transformation differs from the transformation functions MAX and MIN, to select a group of top or bottom values, not just one value. For example, you can use Rank to select the top 10 salespersons in a given territory The Rank transformation is Active Transforamtion Sample Mapping with a Rank Transformation
to create groups for ranked rows, select Group By for the port that defines the group
For the Number of Ranks option, enter the number of rows you want to select for the rank. Change the following properties, if necessary: Cache directory Top/Bottom Tracing level Rank Data Cache Size Normal Default is 2,000,000 bytes.
Port tab
Data type
Top/Bottom
Top
Rank Index Cache Size 2,000,000 Tracing level Normal Rank Data Cache Size 4000,000
Port tab
In the Mapping Designer, select Transformation-Create. Select the Sequence Generator transformation.
Edit transformation
Double-click the title bar of the transformation to open the Edit Transformations dialog box
Properties tab
Select the Properties tab. Enter settings as necessary.
Click OK.
To generate new sequences during a session, connect the NEXTVAL port to at least one transformation in the mapping. Choose Repository-Save.
Properties tab
Click OK. To generate new sequences during a session, connect the NEXTVAL port to at least one transformation in the mapping
.
Choose Repository-Save.
Use the NEXTVAL port to generate a sequence of numbers by connecting . it to a transformation or target. You connect the NEXTVAL port to a downstream transformation to generate the sequence based on the Current Value and Increment By properties Connect NEXTVAL to multiple transformations to generate unique values for each row in each transformation you might connect NEXTVAL to two target tables in a mapping to generate unique primary key values.
you configure the Sequence Generator transformation as follows: Current Value = 1, Increment By = 1.
When you run the workflow, the Informatica Server generates the following primary key values for the T_ORDERS_PRIMARY andT_ORDERS_FOREIGN target tables:
1 3 5 7 9
2 4 6 8 10
you configure the Sequence Generator transformation as follows: Current Value = 1, Increment By = 1.
Output
key values for the T_ORDERS_PRIMARY and T_ORDERS_FOREIGN target tables:
.
T_ORDERS_PRIMARY TABLE: PRIMARY KEY T_ORDERS_FOREIGN TABLE: PRIMARY KEY
1 2 3 4 5
1 2 3 4 5
CURRVAL
CURRVAL is the NEXTVAL value plus one or NEXTVAL plus the Increment By value
.
You typically only connect the CURRVAL port when the NEXTVAL port is already connected to a downstream transformation
When a row enters the transformation connected to the CURRVAL port, the Informatica Server passes the last-created NEXTVAL value plus one.
you configure the Sequence Generator transformation as follows: Current Value = 1, Increment By = 1. When you run the workflow, the Informatica Server generates the following values for NEXTVAL and CURRVAL:
OUT PUT
When you run the workflow, the Informatica Server generates the following values for NEXTVAL and CURRVAL:
NEXTVAL
.
CURRVAL 2 3 4 5 6
1 2 3 4 5
If you connect the CURRVAL port without connecting the NEXTVAL port, the Informatica Server passes a constant value for each row.
1 1 1 1
When you run the workflow, the Informatica Server generates the following constant values for CURRVAL:
Sequence Generator Transformation Properties The Sequence Generator is unique among all because you cannot add, edit, or delete its default ports (NEXTVAL and CURRVAL).
.
Properties tab
Normalizer Transformation
It is an Active and Connected Transformation It normalizes COBOL sources and relational sources allowing the user to organize the data as per the requirement Primarily used for a COBOL source
Workflow
Workflow is a set of instruction that describes how and when to run tasks related to extraction, transformation and loading of data.
Architecture
repository
Workflow Manager
Work Folders Variables/ Events Tasks
Link
New Connection Features Connection Dialogs Replace Connections Register Server Assign to Workflows
Work flow
L.M
D.T.M
Load manager
1. Locks the workflow and reads workflow properties. 2. Reads the parameter file and expands workflow variables. 3. Creates the workflow log file. 4. Runs workflow tasks. 5. Distributes sessions to worker servers. 6. Starts the DTM to run sessions. 7. Runs sessions from master servers. 8. Sends post-session email if the DTM terminates abnormally.
Create a Workflow
Create a Workflow
Create a Workflow
Create a Workflow
Create a Workflow
Local Tasks
Sessions Commands Email Decision Assignment Timer Control Event Raise Event Wait Worklet
Sessions (Updates)
General
Updated parameters
First page allows for options to treat conditional links attached to the object as AND/OR functionality. Also control option to fail the parent (container) if task fails or does not run. Disabling a task in a workflow allows the task to be skipped instead of having to remove it.
Sessions (Updates)
Properties
Addition to this page is the option to choose a different connection to resolve $Source and $Target used in lookups. **Limitation - You can use $DBConnectionVariable but it will only resolve if the parameter is evaluated with the appropriate Source or Target Connection If used when sourcing and targeting flat-files the parameter will not resolve.
Sessions (Updates)
DropDrop-down for common settings
Config Object
This area is where typical allocation of memory occurs, log file options and error handling strategies. The upgrade here is with the concept of maintaining common setting in a config object which is setup separately and chosen from a drop-down list. drop-
Config Object
Setup for reusable Configuration object
Config Object
By creating a session configuration object you can cut down on repetitively assigning memory and log options. When migrating sessions you can optionally migrate configurations or maintain environment specific settings to be reassigned.
Sessions (Updates)
Filter
Sources
This area has primarily just been subdivided into sub tabs. The main addition is the filter dropdropdown that allows for either viewing all source object settings or by individual source object. Instead of filelist option it is either direct or indirect (filelist)
Sessions (Updates)
Filter
Targets
Same subdivisions as sources. However in the Properties sub tab is where the Target Options are defined. The writers sub tab preserves the legacy operation of writing to a flat-file while using flata database specific target (as opposed to the new flat-file target). flat-
Connections
The drop-down list allows to select any available connection as well as specifically define the use dropof a Connection Variable
Sessions (Updates)
Choice of reusable or local command
Components
The area where commands or email unique to this object can be defined. You can alternately select a reusable task to use as well.
Non-Reusable Commands
Option for local or reusable
Components
Regardless of reusable or non-reusable it is necessary to name the object since there is potential nonto promote it.
Non-Reusable Commands
Components
The properties tab allows for error control for commands/tasks
Non-Reusable Commands
Command editor
Components
The Command tab allows for editing of commands (obviously)
Reusable Commands
Components
A non-reusable command can be promoted to reusable or else you can select one from available nontasks.
Reusable Commands
Limitation
Components
Limitation a non-reusable and reusable command can resolve Server Variables but only from nonwithin the Components tab of the session. A command can NOT resolve Server Variables if used in an external Command Task. Understand before promoting. Task.
Sessions (Updates)
Filter for modifiable transformations Instance Filter
Transformations
The transformations area preserves all the previous capabilities. The update is the addition of the main instance filter and another filter button that only displays transformation where overrides can be performed. Also this is where you can input the NEW pre/post SQL commands.
Sessions (Updates)
Promote to reusable
Metadata column
Metadata Extensions
Metadata extensions are available to individual object/tasks or can be made reusable and global. These columns can not be auto-populated with functions but they do allow the extendibility for automore reporting options (e.g., Developer Name, Version, Creation Date, etc.)
Target
Target Properties
Target database connections: specify the location of target Truncate Target Tables: can truncate the tables before loading Deadlock Retry : Configure server to retry when writing to targets Drop and Recreate Indexes: Pre and Post session commands to optimize the query Bilk Loading : can specify bulk loading when loading to DB2, microsoft sql server ,oracle sysbase database
Command Tasks
Command
The command object can be created globally under the Task Developer. It can also be promoted here from within a mapping.
Command Tasks
Event Wait
Assignment
Email Tasks
Email text creation dialog BuiltBuilt-in Variables
Email
Email task is very similar to the command task since it can be either created in the Task Developer or promoted from a mapping. The properties tab allows for an expression editor for text creation utilizing the built-in variables. built-
Defiinition
Links and their underlying conditions are what provide process control to the workflow. When an attached link condition resolves to TRUE then the attached object may begin processing. There can be no looping and links can only execute once per workflow. However more complex branching and decisions can be made by combining multiple links to a single object or branching into decision type paths. Each link has its own expression editor and can utilize upstream resolved object variables or user-defined variables for its own evaluation. user-
Object Variables
Object Variables The default set of object variables from a session can provide more information than just a status of Completed. More complex evaluation can be done for ErrorCode, StartTime, SrcSuccessRows, etc. In addition to the default object variables, User Defined variables can be created and populated via parameter files or changed in the workflow via Assignment tasks. Also any upstream task that has completed can have its variables utilized in downstream link conditions.
Workflow Variables
Variable Condition EndTime ErrorCode ErrorMsg FirstErrorCode FirstErrorMsg PrevTaskStatus SrcFailedRows SrcSuccessRo ws StartTime Status** TgtFailedRows TgtSuccessRo ws TotalTransError s Task Type Decision Task All tasks All tasks All tasks Session task Session task All tasks Session task Session task All tasks All tasks Session tasks Sessions Sessions Datatype Integer Date/time Integer Nstring* Integer Nstring* Integer Integer Integer Date/time Integer Integer Integer Integer ** Supported Status Returns ABORTED DISABLED FAILED NOTSTARTED STARTED STOPPED SUCCEEDED
Workflow Variables
Edit Variables
UserUser-defined Variables
Variables are created at the container level much like the mappings. (Workflows=Mappings, Worklets=Mapplets). Once created values can be passed to objects within the same container for evaluation. (Assignment Task can modify/calculate variables)
Workflow Variables
PrePre-Defined Variable
UserUser-defined Variables
A user-defined variable can assist in more complex evaluations. In the above example, an userexternal parameter file contains the number of expected rows. This in turn is evaluated against the actual rows successfully read from an upstream session. $ signifies and is reserved for prepredefined variables. User defined variables should maintain $$ naming.
Link decision
Parameter File
Workflow variables:
[folder name.WF:workflow name]
Worklet variables:
[folder name.WF:workflow name.WT:worklet name]
Assignment Task
Edit Variables
Usage
The assignment task allows for workflow variables to be manipulated, assigned or calculated and stored (either for the session run or as persistent) for downstream evaluation and condition resolution. The Expression Section allows for the selection of the appropriate variable to manipulate along with the assignment through an Expression Editor. In order to use it is necessary to first create a variable through the Edit Variables dialog
Event Task
Edit Events
Usage
Events are similar to variables. They are repository tags that are a little more flexible (cleaner) than dealing with indicator files (although event watch can be used with indicator files). Before utilizing the new functionality it is necessary to create these Event tags within the container that they will be used. Events can not be monitored across workflows or worklets (even if a worklet is part of the workflow).
Event Task
Event Raise
Event Wait
Usage
If using Event tags then an Event Raise is used in conjunction with an Event Wait. In the above example two branches are executed in parallel. The second session of the lower branch will remain in stasis until the upper branch completes triggering the event. The lower branches event wait task recognizes the event and allows for the second session to start.
Event Raise
Usage
To configure the Event Raise task the drop-down box allows for selection of the appropriate userdropuserdefined Event tag. This will create an entry in the repository for a matching event wait to look for.
Event Wait
Indicator File
Usage
The event wait allows for configuration for an Event Raise (user-defined event) or existence (usercheck for an indicator file.
Event Wait
Usage
The properties section of the Event Wait task allows for further definition of behavior. If your workflow has failed/suspended after Event Raise but before the Event Wait has resolved, then the Enable Past Events is able to recognize that the Event has happened already. If working with indicator files you have to ability to either delete the file or allow it to stay in case some downstream Event Waits are also keying on that file.
Decision Task
Usage
The decision task allows for True/False based branching of process ordering. The Decision task can home multiple conditions and therefore downstream links can be evaluated simply upon the Decision being True or False.
**Note it is possible to have the decision based on SUCCEEDED or FAILED of previous task, however if workflow is set to suspend on error than that branch is suspended and the decision wont trigger on a FAILED condition
Control Task
Usage
The control task is utilized in a branching manner to present a level of stoppage during the workflow. Consider if too many sessions have too many failed rows. The options allow for different levels such as failing at the object level to Aborting the whole workflow.
Timer Task
Usage
The timer task has two main ways to be utilized. The first way is by absolute time that is time evaluated by server time or a user-defined variable (that contains the date/time stamp to start). user-
Timer Task
Usage
The second usage is by Relative time that offers options of time calculated from when the process reached this (Timer) task, from the start of the container this task, or from the start of the absolute top-level workflow. top-
WORKLET
Object that represents a set of tasks It can contain any task available in the Workflow Manager You can run worklets inside a workflow. The workflow that contains the worklet is called the parent workflow Create a worklet when you want to reuse a set of workflow logic in several workflows.
Workflow Monitor