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:
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:
3. Physical data source
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.