How DAC Determines the Order of Task Execution within an Execution Plan

How DAC Determines the Order of Task Execution within an Execution
An execution plan is a collection of subject areas and a unique collection of tasks.
 A task can have prerequisite tasks that need to be executed before its own execution.
DAC determines the order of tasks based on the following considerations:

 A task's source and target table
The dependency algorithm first looks at a task's source and target table.
For example, suppose table A is populated by task T1 by reading from table B, and table B is populated by task T2 by reading from table C. The algorithm would determine task T2 should be executed before T1.

The dependency algorithm next considers the following:

Task phase
An ETL process typically goes through several phases. An example of a typical
order in which phases are executed is as follows:
1. Extract Dimension
2. Extract Fact
3. Load Dimension
4. Load Fact and Load Hierarchy (executed in parallel)
5. Load Aggregate tables
6. Update Dimensions
A table's Truncate Always properties
The order of execution based on Truncate Always properties is as follows:
1. Insert
2. Upsert
3. Physical data source
4. Priority
DAC randomly organizes tasks that have the same property values. If some tasks
need to be executed in a particular order, you can create a task group that allows
you to specify an execution order.

No comments:

Post a Comment

Popular Posts