Siebel Data Warehouse Installation and Administration Guide > Customizing the Siebel Data Warehouse > Siebel Data Warehouse ETL Process Concepts >

Creating Custom Informatica Workflows


You must create custom workflows for all customized mappings. The general requirements for creating custom workflows are as follows:

  • Create the workflow such that each loads only one table. This helps to integrate the workflow with the DAC.
  • The workflow name should match a session name that is used inside the workflow. This helps the DAC to collect certain statistics.
  • Fail parent if this task fails should be checked for all the sessions within a workflow.
  • Fail parent if this task does not run should be checked for all the sessions within a workflow.
  • The Stop on Errors parameter should be set to 1 for all sessions with a workflow. This parameter is located in the Error Handling area of the Config Object tab in Informatica Designer.
  • Set the appropriate source and target connection values in Informatica Designer.
  • If the workflow is going to be used for full load command, you can choose to load in bulk mode (applicable only to Oracle and DB2-UDB databases). If the workflow is going to be used for the full load command in the DAC, then in the Properties tab of Informatica Designer, set the Target Load type to Bulk. This requires that the target table does not have any indices during the load. The DAC will drop the indices automatically; no action is required on your part.
  • For all entities, such as dimension and fact tables, create two workflows, one to be used for a full load and the other to be used for an incremental load. This provides an opportunity to tune each of these load scenarios.
  • If the workflow is designed for loading a dimension in a full mode, make sure the workflow also includes a session for the unspecified row creation.
  • You can decide to truncate the target table in the workflow, but it is necessary that while defining a task in the DAC, you choose appropriate truncate option. This helps the DAC to decide whether to drop and create indices on the table.
  • If some sessions have to be run in serial order and if all the sessions need to be rerun upon failure of the workflow, then you should consider designing a single workflow that has sessions run in serial. If upon failure, not all of the sessions need to be run again, then consider designing separate workflows and define dependencies in the DAC.
  • Use views created by the DAC as the main source table in all extract processes.
  • If a workflow uses a list of values, make it depend on the Fix List Of Values and Copy to OLTP task definition in the DAC.
  • If a workflow uses exchange rates, make it depend on the Extract for ExchRate task definition in the DAC.
  • If a workflow uses cost lists, make it depend on the Load Cost Lists task definition in the DAC.
  • You can import the workflows into the DAC repository's temporary area while defining tasks.

Customization Categories

There are three categories of customizations:

  • Customizing preconfigured workflows. Copy the mapping from the Siebel_DW_Rep folder into the Custom folder. Modify it as necessary. Create new workflows in the Custom folder. In the DAC, search for the task that executes the workflow and change the folder to the Custom folder. Update the command for full and incremental loads appropriately if the workflow names have been changed.
  • Creating new workflows to populate additional custom entities. The custom workflows can be plugged into an ETL process by registering them in the DAC. A new task needs to be registered in the DAC, with the appropriate properties set. Also, you must define source and target tables, task definitions, and dependencies. In the Depends On Tasks tab, select the list of tasks that are prerequisite for the current task to execute. In the Dependent Tasks tab, define the tasks that need to wait for the successful completion of this task. Set the Optional flag to True.
  • Pruning preconfigured ETL processes. Pruning is the process in which you modify a preconfigured execution plan to meet your needs. You can prune an execution plan by using the DAC to inactivate certain components of the execution plan, such as subject areas, table groups, tables, tasks, and dependencies. Inactivating the component means the component does not participate in the ETL process when the execution plan is run. For more information about pruning, see Handling ETL Failures with the DAC.
Siebel Data Warehouse Installation and Administration Guide