li
  当前位置:主页 > 性能优化 > 文章内容
li
oracle 性能调优:调整数据缓存之测量数据缓存的性能
来源: www.ixdba.net  作者: IXDBA.NET官方    时间:2008-04-27   阅读:19  

数据缓存命中率

• 数据缓存命中率由下面四个来自V$SYSSTAT的统计值计算得来:
Ø physical reads 从磁盘读取的块数;
Ø physical reads direct 从磁盘读取不进入数据缓存的数据块数;
Ø physical reads direct (lob) 从磁盘读取不进入数据缓存的LOB对象块数;
Ø session logical reads 从数据缓存中读取的块数,包括当前读(Current, db_block_gets)和一致性读(consistent gets);
• 命中率 = 1- ((physical reads – physical reads direct – physical reads direct (lob)) / session logical reads),调整好的OLTP系统,数据缓存命中率应该在90%以上;
• 查询语句如下:
select 1 – ((physical.value – direct.value – lobs.value) / logical.value)
from v$sysstat physical,
v$sysstat direct,
v$sysstat lobs,
v$sysstat logical
where physical.name = ‘physical reads’
and direct.name = ‘physical reads direct’
and lobs.name = ‘physical reads direct (lob)’
and logical.name = ‘session logical reads’;

数据缓存等待
• free buffer inspected 用户服务器进程为了将数据从磁盘读到数据缓存,在数据缓存中查找可用的块,在找到可用块之前共查找过的缓存块数;
• free buffer waits 用户服务器进程为了将数据从磁盘读到某个脏块,需等待DBW0将这个脏块写回磁盘;
• buffer busy waits 用户服务器进程要存取某个缓存块,如果有其它会话正在使用它,必须等待其完成,可能的原因有:
Ø 并行插入时表的Free lists不足引发段头等待(改用LMT可消除此影响);
Ø 并发事务较多时表的InitTrans太小引发事务等待(增大表的InitTrans);
Ø 回滚段不足时引发undo header等待(增加回滚段的个数);
• 一起查询时用下面的语句:
select name,value from v$sysstat where name = ‘free buffer inspected’
union
select event,total_waits from v$system_event where event in (‘free buffer waits’,’buffer busy waits’);

Statspack中存放数据缓存性能数据的位置
• Instance Efficiency Percentages (Target 100%)(实例命中率) – Buffer Hit %;
• Instance Activity Stat (实例的活动统计) – free buffer inspected, physical reads, physical reads direct, physical reads direct (lob), session logical reads;
• Buffer Pool Statistics (数据缓存统计) -- free buffer waits, buffer busy waits




  上一篇: oracle 性能调优:调整数据缓存之...   下一篇: oracle 性能调优:调整数据缓存之...
li
 §相关评论  
 热点文章

·Resize datafile导致ASM Crash
·在Oracle10g RAC下新增ASM磁盘
·ORACLE SQL性能优化系列 (一)
·oracle性能调优:管理oracle日志
·oracle RAC环境中系统时钟的调
·why:Rac的心跳线不支持交叉线?
·RAC的VIP及实例依赖关系:版本O
·如何启动DataGuard的备用数据库
·系统表空间IO错误 数据损坏处理
·不幸中的万幸:遭遇ORA-00600 [
·用ORACLE的高级复制实现内外网
li
 编辑推荐
·Resize datafile导致ASM Crash
·在Oracle10g RAC下新增ASM磁盘
·ORACLE SQL性能优化系列 (一)
·oracle性能调优:管理oracle日志
·oracle RAC环境中系统时钟的调
·why:Rac的心跳线不支持交叉线?
·RAC的VIP及实例依赖关系:版本O
·如何启动DataGuard的备用数据库
·系统表空间IO错误 数据损坏处理
·不幸中的万幸:遭遇ORA-00600 [
·用ORACLE的高级复制实现内外网
li
 相关篇章
·oracle 性能调优:调整数据缓存之...
·oracle 性能调优:调整共享池之改...
·oracle 性能调优:调整共享池之测...
·oracle 性能调优:调整共享池之理...
·oracle SQL性能调整之七: 关于簇
·oracle SQL性能调整之六: 关于分...
·oracle SQL性能调整之五: 关于索...
·oracle SQL性能调整之四: 关于物...
·oracle SQL性能调整之三: 稳定执...
·oracle SQL性能调整之二:深入理解...
·oracle 性能调优:调整数据缓存之...
·oracle 性能调优:调整数据缓存之...
·oracle 性能调优:调整数据缓存之...
·oracle 性能调优:调整SGA之共享服...
·oracle 性能调优:调整SGA之共享服...
·oracle 性能调优:调整SGA之配置共...
·oracle 性能调优:调整SGA之测量共...
·oracle 性能调优:调整SGA之改进共...
·oracle 性能调优:调整SGA之大池的...
·oracle 性能调优:调整SGA之Java池...
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接