Monday, September 28, 2009

DAC Full Load vs Incremental Load

I have been getting few queries around what determines DAC to do an incremental load or Full load. Though DAC Guide has it under Refresh Dates section, I thought I will simplify it for the benefit of everybody.

If you ever want to run a Full Load of an execution plan, reset Data Warehouse in DAC by navigating to Tools -> ETL Management -> Reset Data Warehouse. The warning is - "This action will cause all tables that are loaded during next ETL to be truncated". This means that refresh dates in Physical Sources will be set to NULL both on Source and Target tables and if both refresh dates are NULL, ETL truncates the target table and run Full Load command.

Full load is a straight forward exercise but most often, we encounter doing something that is not straight forward such as running full load only on certain tasks but not the whole of the execution plan. Reasons are plenty and this post is limited to provide a reasonable explanation on how DAC determines whether to run an incremental or full load.

The Refresh Dates in Physical Data Sources determine whether to run the command for incremental or full load. I am pasting a graphic that explains what happens when.


Based on what you need, determine what refresh dates are to be populated/modified in Physical data sources.

2 comments:

Hansini said...

You mean LAST_UPDATE_DATE >= LAST_EXTRACT_DATE right.

Ashish said...

Whenever i run DAC Full load, all the previous data in Snapshot tables gets lost. see doc id (1326171.1 and 1132553.1) and this is not acceptable to management.

Kindly let me know of any work-around and we have 4-5 analytics which needs to be implemented.