db file sequential read:
官网解释:
This event signifies that the user process is reading a buffer into the SGA buffer cache and is waiting for a physical I/O call to return. A sequential read is a single-block read.
Single block I/Os are usually the result of using indexes. Rarely,
full table scan calls could get truncated to a single block call because
of extent boundaries, or buffers present in the buffer cache. These
waits would also show up as db file sequential read
.
Check the following V$SESSION_WAIT
parameter columns:
P1
: The absolute file number
P2
: The block being read
P3
: The number of blocks (should be 1)
On a healthy system, physical read waits should be the biggest waits
after the idle waits. However, also consider whether there are db
file
sequential
reads
on a large data warehouse that should be seeing mostly full table scans with parallel query.
Figure 10-1 depicts the differences between the following wait events:
db
file
sequential
read
(single block read into one SGA buffer)
db
file
scattered
read
(multiblock read into many discontinuous SGA buffers)
direct
read
(single or multiblock read into the PGA, bypassing the SGA)
Figure 10-1 Scattered Read, Sequential Read, and Direct Path Read
解释:
db sequential read 此事件表示用户进程正在将缓冲区读入SGA缓冲区高速缓存并正在等待物理I / O调用返回。 顺序读取是单块读取。
单块I / O通常是使用索引的结果。
全表扫描调用可能会因缓冲区高速缓存存在的范围边界或缓冲区而被截断的单块调用。 这些等待也将显示为db file sequential read。
db file sequential read的优化方法:
从读取开始,增加SGA中buffer cache的大小,避免每次都从硬盘中去读数;
优化sql语句,减少不必要的块读取;
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。