Oracle 11g中Direct Path Read特性及其影响.pdfVIP

  • 2
  • 0
  • 约1.84万字
  • 约 20页
  • 2026-05-15 发布于北京
  • 举报

一.DirectPath说明

在oracle11g以前的版本中,如果对大表进行全表扫描,等待是:dbfile

scatteredread;在11g中,如果对大表进行全表扫描,等待是:directpathread;

即在11g中,大表全表扫描是将数据块直接读入会话的PGA区域。(具体的查看方法参

考后面的示例)。

在11g中,大表全表扫描时数据块不经过SGA而直接进入PGA,这样会造成每次进

行大表全表扫描,读都很大,而在10g中,由于全表扫描的数据块在SGA中已经存

在,所以执行全表扫描时,它的读为0。

但是这里主要是Oracle在优化策略上的进步,即假定大表频繁全表扫描这种现象,

在生产库上不会太多,通过把数据直接读入PGA,进而减少了CacheBuffer的繁忙交换

程度,提高了CacheBuffer的使用效率。

直接路径具备优势:

1.减少了对栓的使用,避免可能的栓争用

2.IO的大小不再取决于buffer_cache中所存在的块;试想某个8个块的extent中

1、3、5、7号块在高速缓存中,而2、4、6、8块没有被缓存,传统的方式在

该extent时将会是对2、4、6、8块进行4次dbfilesequentialread,这是一种十分

可怕

文档评论(0)

1亿VIP精品文档

相关文档