Oracle 直接路径读
[sql] view plaincopyprint?
- 在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 直接路径读相关推荐
- oracle直接路径读,direct path read直接路径读
前言:传统的数据库读取的方式是先在内存中搜索,如果搜索不到数据,那么就在把数据从磁盘读到内存中,然后PGA再中SGA中获取数据,这样数据就缓存到内存中了,下次再次访问的时候,就可以直接从SGA中获取, ...
- 更改ORACLE归档路径及归档模式
在ORACLE10g和11g版本,ORACLE默认的日志归档路径为闪回恢复区($ORACLE_BASE/flash_recovery_area).对于这个路径,ORACLE有一个限制,就是默认只有2G ...
- oracle 优化逻辑读过高,详述逻辑读与arraysize的关系
我们都知道,数据块是oracle最基本的读写单位,但用户所需要的数据,并不是整个块,而是块中的行,或列.当用户发出SQL语句时,此语句被解析执行完毕,就开始了数据的抓取阶段,在此阶段,服务器进程会先将 ...
- oracle consistent gets,oracle构建一致性读
对于实际的业务系统,通常有一些热点的表,insert和delete的量非常大,这个时候就会发现一些查询语句的逻辑读比较偏高, 这时可能就是oracle在构建一致性块的进行的consistent rea ...
- oracle模拟重叠事务,ORACLE的事务读一致性与语句读一致性
SET TRANSACTION READ ONLY来实现事物级别的一致性.一个事物所有语句读到的数据都是一致的. 我们开始试验一,模拟语句级别读一致性.第一个session使用显示打开一个游标模拟数据 ...
- (转) Oracle性能优化-读懂执行计划
Oracle的执行计划 得到执行计划的方式 Autotrace例子 使用Explain explain plan set STATEMENT_ID='testplan' for select * fr ...
- oracle crf路径,说说 ora.crf 那些事
Oracle数据库环境尤其是RAC环境对下层的基础环境要求非常严格,常常会因为CPU不足,内存不足.网络,IO等原因导致数据库hang或脑裂驱逐, 这里如果没有系统信息数据的支撑, 可能会陷入SA和D ...
- Oracle数据库一致性读的原理
在Oracle数据库中,undo主要有三大作用:提供一致性读(Consistent Read).回滚事务(Rollback Transaction)以及实例恢复(Instance Recovery) ...
- oracle 多路径 SAN,前言 - Oracle Solaris 管理:SAN 配置和多路径
前言 Oracle Solaris 管理:SAN 配置和多路径 概述了作为 Oracle Solaris OS 一部分的 Solaris I/O 多路径功能,以前称为 SunStorageTek Tr ...
最新文章
- 如何在Linux系统上部署接口测试环境
- 用户注册,用邮箱来验证用户是否存在
- Contextualizing Airbnb by Building Knowledge Graph
- C++实现skip list跳表(附完整源码)
- 专业音频如何把电平转换成dbu_这是我见过最细致的音频系统增益设置指南,跟着学起来!...
- 11 个简练的 Java 性能调优技巧
- django之上传图片
- python min函数 索引_使用列表中的max()/ min()获取返回的max或min项的索引
- 顺序存取和随机存取的区别_内存和硬盘的区别
- mysql数据库用doc命令_MySQl数据库常用的DOS命令
- centos搭建git服务
- java中设置http响应头控制浏览器禁止缓存当前文档内容
- 珞珈一号夜间灯光数据评价
- switch交换的vlan三种模式详解
- win7_64位安装AutoCAD2008详解_完美解决特性面板等局部英文的问题
- OpenWRT设置SmartDNS+ADGuardHome
- Ant Design Pro从零到一(认识AntD)
- 部分库函数的自我实现
- 关于java变量命名,介绍阿里JAVA命名规范及IDEA实时检测插件的使用以及CODELF取名神器
- 如何使用python视频_如何使用python网络爬虫抓取视频?