This is the same type of event as "db file sequential read", except that Oracle will read multiple data blocks. Multi-block reads are typically used on full table scans. The name "scattered read" refers to the fact that multiple blocks are read into database block buffers that are 'scattered' throughout memory.
The rest of the information in this section is only valid for this metric when it appears in either the Enterprise Manager Grid Control or the Enterprise Manager Database Control (if applicable).
The following table shows how often the metric's value is collected and compared against the default thresholds. The 'Consecutive Number of Occurrences Preceding Notification' column indicates the consecutive number of times the comparison against thresholds should hold TRUE before an alert is generated.
Target Version |
Evaluation and Collection Frequency |
Upload Frequency |
Operator |
Default Warning Threshold |
Default Critical Threshold |
Consecutive Number of Occurrences Preceding Notification |
Alert Text |
pre-10g |
Every Minute |
After Every Sample |
> |
Not Defined |
Not Defined |
3 |
%value%%% of service time is spent waiting on the 'db file scattered read' event. |
(DeltaDbFileScatteredReadTime/DeltaServiceTime)*100 where:
DeltaDbFileScatteredReadTime: difference of 'sum of time waited for sessions of foreground processes on the 'db file scattered read' event' between sample end and start
DeltaServiceTime: difference of 'sum of time waited for sessions of foreground processes on events not in IdleEvents + sum of 'CPU used when call started' for sessions of foreground processes' between sample end and start
See Idle Events
If the TIME spent waiting for multiblock reads is significant, then it is helpful to determine against which segments Oracle is performing the reads. The files where the reads are occurring can be found by looking at the V$FILESTAT view where BLKS_READ / READS > 1 . (A ratio greater than one indicates there are some multiblock reads occurring).
It is also useful to see which sessions are performing scans and trace them to see if the scans are expected. This statement can be used to see which sessions may be worth tracing:
SELECT sid, total_waits, time_waited FROM v$session_event WHERE event='db file scattered read' and total_waits>0 ORDER BY 3,2 ;
You can also look at:
Statements with high DISK_READS in the V$SQL view
Sessions with high table scans blocks gotten in the V$SESSTAT view
Related Topics
About Alerts
About the Metric Detail Page
Editing Thresholds
Understanding Line Charts
Copyright © 1996, 2009, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.