技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> Oracle --> sequential和scattered的含义

sequential和scattered的含义

浏览:2299次  出处信息

    sequential read(顺序读)一般发生在index range scan中,也被称为单块读,scattered read(离散读)一般发生在FTS中,也被称为多块读。对于sequential和scattered这两个词的含义,往往会造成一些困惑。因为从IO的角度去看,sequential read因为是单块读,在IO子系统上是离散读。而scattered read因为是多块读,在IO子系统上是顺序读。

    因为所谓的sequential和scattered是从Oracle的角度去看,而不是从IO子系统的角度去看。sequential的含义是指Oracle请求IO是顺序的,比如index range scan,就必须是先读root,再读branch,然后读leaf,最后读data block,这个过程是顺序,串行和同步的。而scattered read是指Oracle请求IO是离散的,比如在做FTS时,可以向操作系统同时请求多个IO,而且不必等到返回,就可以请求下一个IO,所以是异步的过程。所以我说scattered read是局部并行,全局串行的过程。

    Oracle的顺序读在IO子系统上是离散的,而Oracle的离散度在IO子系统上是连续的,之所以这么命名是因为Oracle和IO子系统站在自己的角度观察的结果。

    -EOF-

建议继续学习:

  1. 全表扫描却产生大量db file sequential read一例    (阅读:2292)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1