这两个等待事件,一般都是成对出现。在以前我对这两个事件的理解始终存在着误解,现在重新整理归纳如下:
- 这两个事件描述的是 blocks在内存中存储的情况,而不是从disk中读取的情况。也就是说,如果读取的blocks在内容中是连续存放的,那么就触发的是db file sequential read事件;如果在内容中存放的是离散的,那么就是db file scattered read
- 这两个事件是由unix中两个函数来对应:read() 和readv(); 其中,read()读取的是contiguous blocks 并且存放的也是contiguous area,这对应的就是db file sequential file; readv()读取的是contiguos blocks,但是存放确是离散的空间,对应的就是db file scattered read
| EventName | P3=1 | P3>1 |
| db file sequential read | Index scan 在一个extent中的table scan 通过rowid读取table | 临时段的读取 |
| db file scattered read | Never | FTS fast full-index scan |
ref:
http://carson.yculblog.com/post.1110230.html[@more@]
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7916042/viewspace-915060/
,如需转载,请注明出处,否则将追究法律责任。