等待事件:db file sequential read
转自作者:wzq609
db file sequential read:数据文件的顺序读
- 解释:
ORACLE进程需要访问block不能从SGA中获取的时候,因此oracle进程会等待block从I/O读取到SGA;一个顺序读是一个单块读,单块I/O一般来自索引读的结果;
问题:AWR报告中的系统的等待事件中的db file sequential read是否合理?
例:
db file sequential read是指sga中找不到相应的数据,所以跟buffer hit有很大的关系,当buffer hit命中率太低了,相应的db file sequential read就会高,一般buffer hit保持着95%以上;
查看这个报告的db file sequential read的总时间和平均时间;
Foreground Wait Events也会统计db file sequential read所花费的时间和平均时间
根据SQL User I/O等待时间,查看是否有调优的空间;
- db file sequential read的优化方法
- 从读取开始,增加SGA中buffer cache的大小,避免每次都从硬盘中去读数;
- 优化sql语句,减少不必要的块读取;