oracle数据库11g及以上版本
浅析direct path read等待事件
direct path read这个等待事件在10G是没有的,是11G新等待事件,目的是让全表扫描和快速索引扫描不走SGA,直接从数据文件读到PGA。 direct path read的优势 1、采用直接路径读取后,总能保证读取的块数是多块读参数设置的大小,提高了读取的效率 2、大大的降低了对于latch的使用,进而避免了可能导致的latch竞争(cbc latch等) 3、降低了全表扫描对buffer cache的冲击 4、降低了buffer pin的开销,有可能降低buffer busy waits等相关等待 direct path read可能的副作用 1、会发生段一级的检查点(后面详细介绍),因此在查询真正开始执行前,会做这个额外的准备工作。而且可能会造成IO抖动,因为要写脏数据。 2、如果你的表需要频繁的全表扫描读取,还是用传统读取方式比较好。 3、在MOS中搜索direct path read,会发现它可能会导致多次的延迟块清除。 direct path read较高的可能原因有: