Quote:
|
Originally Posted by Brother-Eagle™ Advice
When DB2 has to scan many pages to find result sets, usually because indexes are missing or sub-optimally defined, DB2 uses prefetch I/O which is performed asynchronously. When the percentage of asynchronous I/O is high, then synchronous I/O is low.
When the Synchronous Read Percentage is low, DB2 is doing a lot of scanning to find result sets. Scans occur when indexes are missing or are sub-optimally defined.
|
I think the statement above is over-simplified to the point where it becomes incorrect. In my view asynchronous I/O is good, unless the "time waited for prefetch" and "unread prefetch pages" are high compared with the read time and the total number of prefetched pages respectively. The ratio of rows selected to rows read is often a better indicator of index access (in)efficiency.