首页 >

Oracle 11g direct path read 等待事件的理解

数据库|mysql教程Oracle 11g direct path read 等待事件的理解
Oracle 11g,Oracle 11g direct p
数据库-mysql教程
php网站源码和dedecms,ubuntu时区选择上海,python入门爬虫案例,php中德/,新站seo教程lzw
在Oracle 11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这样的全表扫描就是物理读了。 在10g中,都是通过gc
金蝶进销存java源码,关掉ubuntu的动画,东方财富 反爬虫,php 建立画布,域名变化seolzw
app下载网页源码,vscode配置nuget,ubuntu功能,tomcat连接队列,sqlite导出操作步骤,织梦 统计插件,前端三大主流框架b站,网络爬虫保存文字的软件,php代码转换,广州seo项目报价,如何用源代码做网站,网页信息发布模板之家,什么是dede模板lzw

在Oracle 11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这样的全表扫描就是物理读了。 在10g中,都是通过gc buffer来读的,所以不存在direct path read的问题。

direct path read较高的可能原因有:

1. 大量的磁盘排序操作,order by, group by, union, distinct, rollup, 无法在PGA中完成排序,需要利用temp表空间进行排序。 当从临时表空间中读取排序结果时,会产生direct path read.

2. 大量的Hash Join操作,利用temp表空间保存hash区。

3. SQL语句的并行处理

4. 大表的全表扫描,在中,全表扫描的算法有新的变化,根据表的大小、高速缓存的大小等信息,决定是否绕过SGA直接从磁盘读Oracle11g取数据。而10g则是全部通过高速缓存读取数据,称为table scan(large)。11g认为大表全表时使用直接路径读,可能比10g中的数据文件散列读(db file scattered reads)速度更快,使用的latch也更少。

大量的direct path read等待时间最可能是一个应用程序问题。 direct path read事件由SQL语句驱动,这些SQL语句执行来自临时的或常规的表空间的直接读取操作。 当输入的内容大于PGA中的工作区域时,带有需要排序的函数的SQL语句将排序结果写入到临时表空间中,,临时表空间中的排序顺序串随后被合并,用于提供最终的结果。读取排序结果时,Oracle会话在direct path read等待事件上等待。DB_FILE_DIRECT_IO_COUNT初始化参数可能影响direct path read的性能。

一个隐含参数:

_serial_direct_read = false 禁用direct path read

_serial_direct_read = true 启用direct path read

alter sytem set “_serial_direct_read”=never scope=both sid=’*’; 可以显着减少 direct path read


Oracle 11g direct path read 等待事件的理解
  • 图文详解Windows 7下安装Oracle 11g遇到问题及解决方法
  • 图文详解Windows 7下安装Oracle 11g遇到问题及解决方法 | 图文详解Windows 7下安装Oracle 11g遇到问题及解决方法 ...

    Oracle 11g direct path read 等待事件的理解
  • Oracle 11g 11.2.0.1.0 使用exp无法导出空表的解决办法
  • Oracle 11g 11.2.0.1.0 使用exp无法导出空表的解决办法 | Oracle 11g 11.2.0.1.0 使用exp无法导出空表的解决办法 ...

    Oracle 11g direct path read 等待事件的理解
  • Oracle 11g Active Dataguard Failover实验
  • Oracle 11g Active Dataguard Failover实验 | Oracle 11g Active Dataguard Failover实验 ...