In this scenario, a FastLoad job submitted today took significantly longer than yesterday. You want to determine the root cause. Although the example is specific to FastLoad, you can use this general approach for other utilities.
- Retrieve the rows for the jobs yesterday and today from DBQLUtilityTbl using the following criteria:
- Job attributes that uniquely identify this FastLoad job. This criteria returns all instances of this FastLoad job. Possible job attributes include:
- UtilityName = 'FASTLOAD'
- Username
- Query band
- Utility request
- Job end time: either today or yesterday.
- Job attributes that uniquely identify this FastLoad job.
- Compare column values between the two rows to determine the possible causes. Suggestions include:
- Compare RowsInserted values. If the job today loaded significantly more rows, this could be the cause. If not, proceed to the next step.
- Compare DelayTime values. An increase indicates the job today was delayed longer by TASM.
- Compare the elapsed time of each phase (PhasexEndTime - PhasexStartTime) to identify the phase with a significant increase in elapsed time.
- If the phase with a significant increase in elapsed time is the Acquisition phase, check for an increase in MaxDataWaitTime, which may be caused by more load on the client machine or slower network response time.
- Compare the resource usages of the phase with a significant increase in elapsed time to find additional clues. For example:
- An increase in PhasexMaxCPUTime may indicate data skew.
- An increase in Phase1 messages (Phase1BlockCount) may indicate that a smaller message size was used.
- Examine related query log data in DBQLogTbl. To select the desired data, use:
- LSN to select all rows of a job.
- PhasexStartTime and PhasexEndTime to select rows of a specific phase.