Consultor Eletrônico



Kbase P176284: How is scatter factor calculated by the proutil dbanalysis?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   3/21/2011
Status: Unverified

GOAL:

How is scatter factor calculated by the proutil dbanalysis?

GOAL:

Why is scatter factor high for a table which lives in an area by itself (no other tables and no other indices)?

FACT(s) (Environment):

All Supported Operating Systems
Progress/OpenEdge Product Family

FIX:

From browsing the code for dbanalysis the section of dbanalysis which determines scatter factor takes stock of the recid of each record as it traverses the table (believe it is by primary index).
It notices the distance between the current record and the previous record and with some juggling of an internal algorithm it makes a determination of what is the minimum preferred distance and what the actual distance between the current recid and the last recid and averages all the results.

If frequent deletes of data are done in random sections of the table then the sequential record order may actually be bouncing back and forth within the area due to new records being assigned the next available space within the area. While the records for this table are all in contiguous blocks to one another they are not sequentially arranged.

This can account for why a table which lives in an area by itself can have large values for scatter factor.