Professional Documents
Culture Documents
Working With Power Center 8 Workflow
Working With Power Center 8 Workflow
0 WORKFLOW
Content
WORKING WITH POWERCENTER 8 WORKFLOW MANAGER WORKING WITH POWERCENTER 8 WORKFLOW MONITOR
Workflow Manager
Workflow Manager In the Workflow Manager, we can define a set of instructions to execute tasks, such as sessions, emails, and shell commands. This set of instructions is called a workflow. It has the following tools to help we develop a workflow. Task Developer It creates tasks that we want to accomplish in the workflow. Worklet Designer It creates a worklet in the Worklet Designer. A worklet is an object that groups a set of tasks. Worklet is similar to a workflow, but without scheduling information. We can nest worklets inside a workflow. Workflow Designer It creates a workflow by connecting tasks with links in the Workflow Designer. We can also create tasks in the Workflow Designer as we develop the workflow.
integration * intelligence * insight
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
Workflow Tasks
Workflow tasks Workflow tasks are instructions the Integration Service executes when running a workflow. Workflow tasks perform functions supplementary to extracting, transforming, and loading data. Workflow tasks include commands, decisions, timers, and email notification. We can create the following types of tasks in the Workflow Manager: Assignment Assigns a value to a workflow variable. Command Specifies a shell command to run during the workflow. Control Stops or aborts the workflow. Decision Specifies a condition to evaluate. Email Sends email during the workflow. Event-Raise Notifies the Event-Wait task that an event has occurred. Event-Wait Waits for an event to occur before executing the next task. Session Runs a mapping we create in the Designer. Timer Waits for a timed event to trigger.
integration * intelligence * insight 8
Task Developer
We can create the following three types of tasks in the Task Developer. Command Session Email
10
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, Session Task is reusable (optional) Session Task (continued) Double click on the Session object Valid Mappings are displayed in the dialog box. Session Task tabs General Properties Config Object Mapping Components Metadata Extensions
integration * intelligence * insight 11
the
Session Task
Session Task-General
Session Task-Properties
12
Session Task
Session Task Properties Enable Test Load With a test load, the Integration Service reads and transforms data without writing to targets. $Source Connection Value Enter the database connection we want the Integration Service to use for the $Source variable. Select a relational or application database connection. We can also choose a $DBConnection parameter. Use the $Source variable in Lookup and Stored Procedure transformations to specify the database location for the lookup table or stored procedure. $Target Connection Value Enter the database connection we want the Integration Service to use for the $Target variable. Select a relational or application database connection. We can also choose a $DBConnection parameter. Use the $Target variable in Lookup and Stored Procedure transformations to specify the database location for the lookup table or stored procedure. Treat Source Rows As If the mapping for the session contains an Update Strategy transformation or a Custom transformation configured to set the update strategy, the default option is Data Driven. Commit Interval In conjunction with the selected commit interval type, indicates the number of rows. By default, the Integration Service uses a commit interval of 10,000 rows. This option is not available for user-defined commit.
integration * intelligence * insight
Session Task-Properties
13
Session Task
Session Task-Config Object Line Sequential Buffer Length Affects the way the Integration Service reads flat files. Increase this setting from the default of 1024 bytes per line only if source flat file records are larger than 1024 bytes. On Stored Procedure Error Required if the session uses pre- or post-session stored procedures. If we select Stop Session, the Integration Service stops the session on errors executing a presession or post-session stored procedure. If we select Continue Session, the Integration Service continues the session regardless of errors executing pre-session or post-session stored procedures. On Pre-Post SQL Error Required if the session uses pre- or post-session SQL. If we select Stop Session, the Integration Service stops the session errors executing pre-session or post-session SQL. If we select Continue, the Integration Service continues the session regardless of errors executing pre-session or post-session SQL.
integration * intelligence * insight
14
Session Task
Session Task-Mapping Connection Before the Integration Service can access a source or target database in a session, we must configure the database connections in the Workflow Manager. When we create or modify a session that reads from or writes to a relational database, we can select configured source and target database connections. When we create a connection, we must have the following information available: Database name Name for the connection. Database type Type of the source or target database. Database user name Name of a user who has the appropriate database permissions to read from and write to the database. To use an SQL override with pushdown optimization, the user must also have permission to create views on the source or target database. Password Database password (7-bit ASCII only). Connect string Connect string used to communicate with the database. Database code page Code page associated with the database.
integration * intelligence * insight 15
Session Task
Partition Points Partition points mark the boundaries between threads in a pipeline. The Integration Service redistributes rows of data at partition points. We can add partition points to increase the number of transformation threads and increase session performance Add Partition Point Click to add a new partition point. When we add a partition point, the transformation name appears under the Partition Points node. Delete Partition Point Click to delete the selected partition point. We cannot delete certain partition points. Edit Partition Point Click to edit the selected partition point. This opens the Edit Partition Point dialog box. $$PushdownConfig Mapping Depending on the database workload, we may want to use source-side, target-side, or full pushdown optimization at different times. For example, we might want to use partial pushdown optimization during the peak hours of the day, but use full pushdown optimization from midnight until 2 a.m. when activity is low. To use different pushdown optimization configurations at different times, use the $$PushdownConfig mapping parameter. The parameter lets we run the same session using the different types of pushdown optimization. Complete the following steps to configure the mapping parameter: Create $$PushdownConfig in the Mapping Designer.
16
Session Task
When we add the $$PushdownConfig mapping parameter in the Mapping Designer, use the following values: Field Value Name $$PushdownConfig Type Parameter Datatype String Precision or Scale 10 Aggregation n/a Initial Value None Description Optional When we configure the session, choose $$PushdownConfig for the Pushdown Optimization attribute. Define the parameter in the parameter file. Enter one of the following values for $$PushdownConfig in the parameter file: None. The Integration Service processes all transformation logic for the session. Source. The Integration Service pushes part of the transformation logic to the source database. Source with View. The Integration Service creates a view to represent the SQL override value, and it runs an SQL statement against this view to push part of the transformation logic to the source database. Target. The Integration Service pushes part of the transformation logic to the target database. Full. The Integration Service pushes all transformation logic to the database. Full with View. The Integration Service creates a view to represent the SQL override value, and it runs an SQL statement against this view to push part of the transformation logic to the source database. The Integration Service pushes any remaining transformation logic to the target database.
17
Session Task
Session Task-Transformations Allows overrides of some transformation properties Does not change the properties in the Mapping
Session Task-Components Pre-Session Command Shell commands that the Integration Service performs at the beginning of a session. Post-Session Success Command Shell commands that the Integration Service performs after the session completes successfully Post-Session Failure Command Shell commands that the Integration Service performs after the session if the session fails.
18
Event-Task
Event-Raise task The Event-Raise task represents the location of a user-defined event. A user-defined event is the sequence of tasks in the branch from the Start task to the Event-Raise task. When the Integration Service runs the Event-Raise task, the Event-Raise task triggers the userdefined event. To use an Event-Raise task In the Workflow Designer workspace, create an Event-Raise task and place it in the workflow to represent the userdefined event we want to trigger. A user-defined event is the sequence of tasks in the branch from the Start task to the Event-Raise task. Double-click the Event-Raise task to open it. Click the Open button in the Value field on the Properties tab to open the Events Browser for user-defined events. Choose an event in the Events Browser. Click OK twice to return to the workspace.
integration * intelligence * insight 19
Event-Task
Event-Wait task The Event-Wait task waits for a predefined event or a user-defined event. A predefined event is a file-watch event. When we use the Event-Wait task to wait for a predefined event, we specify an indicator file for the Integration Service to watch. The Integration Service waits for the indicator file to appear. Once the indicator file appears, the Integration Service continues running tasks after the Event-Wait task. To wait for a user-defined event In the workflow, create an Event-Wait task and double-click the Event-Wait task to open it. In the Events tab of the task, select User-Defined. Click the Event button to open the Events Browser dialog box. Select a user-defined event for the Integration Service to wait. Click OK twice.
20
E-Mail Task
We can send email during a workflow using the Email task on the Workflow Manager. We can create reusable Email tasks in the Task Developer for any type of email. Or, we can create non-reusable Email tasks in the Workflow and Worklet Designer. Use Email tasks in any of the following locations Session properties We can configure the session to send email when the session completes or fails. Workflow properties We can configure the workflow to send email when the workflow is interrupted. Workflows or worklets We can include an Email task anywhere in the workflow or worklet to send email based on a condition we define.
21
E-Mail Task
We can create Email tasks in the Task Developer, Worklet Designer, and Workflow Designer. To create an Email task in the Task Developer: In the Task Developer, click Tasks > Create. The Create Task dialog box appears. Select an Email task and enter a name for the task. Click Create. The Workflow Manager creates an Email task in the workspace. Click Done. Double-click the Email task in the workspace. The Edit Tasks dialog box appears. Click Rename to enter a name for the task. Enter a description for the task in the Description field. Click the Properties tab. Enter the fully qualified email address of the mail recipient in the Email User Name field. Enter the subject of the email in the Email Subject field. Or, we can leave this field blank. Click the Open button in the Email Text field to open the Email Editor. Enter the text of the email message in the Email Editor. We can leave the Email Text field blank. Note: We can incorporate format tags and email variables in a postsession email. However, we cannot add them to an Email task outside the context of a session. Click OK twice to save the changes.
integration * intelligence * insight
22
Worklet
A worklet is an object that represents a set of tasks that we create in the Worklet Designer. Create a worklet when we want to reuse a set of workflow logic in more than one workflow. To run a worklet, include the worklet in a workflow. The workflow that contains the worklet is called the parent workflow. When the Integration Service runs a worklet, it expands the worklet to run tasks and evaluate links within the worklet. It writes information about worklet execution in the workflow log.
To create a reusable worklet In the Worklet Designer, click Worklet > Create. The Create Worklet dialog box appears. Enter a name for the worklet. Click OK. The Worklet Designer creates a Start task in the worklet. To create a non-reusable worklet: In the Workflow Designer, open a workflow. Click Tasks > Create. For the Task type, select Worklet. Enter a name for the task. Click Create. The Workflow Designer creates the worklet and adds it to the workspace. Click Done.
integration * intelligence * insight 23
Workflow Scheduler
Workflow Scheduler Objects Setup reusable schedules to associate with multiple WorkflowsUsed in Workflows and Session Tasks
24
Server Connections
Configure Server data access connections- Used in Session Tasks
25
26
FTP Connection
Creating an FTP connection Instructions to the Server to ftp flat files Used in Session Tasks
27
Workflows Design
Sample Workflow
Developing Workflow
28
Workflows Design
Building Workflow Components Add Sessions and other Tasks to the Workflow Connect all Workflow components with Links Save the Workflow Start the Workflow NOTE: Sessions in a workflow can be executed independently
29
Workflow Monitor
Workflow Monitor We can monitor workflows and tasks in the Workflow Monitor. View details about a workflow or task in Gantt Chart view or Task view. We can run, stop, abort, and resume workflows from the Workflow Monitor. We can view sessions and workflow log events in the Workflow Monitor Log Viewer. The Workflow Monitor displays workflows that have run at least once. The Workflow Monitor continuously receives information from the Integration Service and Repository Service. It also fetches information from the repository to display historic information. The Workflow Monitor consists of the following windows. Navigator window It displays monitored repositories, servers, and repositories objects. Output window. It displays messages from the Integration Service and Repository Service. Time window It displays progress of workflow runs. Task view It displays details about workflow runs in a report format. Gantt Chart view It displays details about workflow runs in chronological format. integration * intelligence * insight
Workflow Monitor
The Workflow Monitor displays Workflows that have been run at least once we can monitor a Server in two modes: online or offline Online mode Workflow Monitor continuously receives information from the Informatica Server and the Repository Server Offline mode Workflow Monitor displays historic information about past Workflow runs by fetching information from the Repository Monitoring Workflow Perform the following 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
integration * intelligence * insight 31
Workflow Monitor
Monitoring Workflow
The End
33