ITPub博客

首页 > 数据库 > Oracle > cache buffers chains and cache buffers lru chains

cache buffers chains and cache buffers lru chains

原创 Oracle 作者:tolilong 时间:2012-10-21 13:52:05 0 删除 编辑
[@more@]
cache buffers chains:
使用高速缓冲区的时候,查询或修改hash chain要获得相应的cache buffers chains.
争用的话,主要是在两个方面:
1)低效的sql
2)hot block
select * from (select child#,gets,sleeps from v$latch_children where name='cache buffers chains'
order by sleeps desc)
where rownum<20
这条sql可以确定是低效sql引起的cache buffers chains还是host block引起的
如果在查询的结果当中,里面有特定cache buffers chains的get和sleep数值比其他的高,表明是hot block
否则就要查看是不是低效的sql引起的。
减少hot block可以提高pctfree,使用小块,分散快
---=============================================================
cache buffers LRU chains:
要查看或修改工作组(LRU+LRUW)的进程,就需要获得cache buffers lru chain
1)进程欲读取还没有装载到内存上的块时,通过查询LRU列分配到所需的空闲缓冲区,此过程需要
cache buffers lru chains
2)DBWR为了将脏缓冲区记录到disk上去,查询LRUW列,将相应的缓冲区移动到LRU列的过程,也需要
cache buffers lru chains
a.多个会话同时扫描一个table或一个index的时候,发生cache buffers chain的几率较大
b.多个会话同时扫描多个table或多个index的时候,发生cache buffers lru chain的几率较大
c.低效的index scan时,则会发生db file sequential read等待和cache buffers chain等待
d.不必要的table scan时候,则会发生db file scattered read等待和cache buffers lru chain的等待

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24237320/viewspace-1059616/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-07-13

  • 博文量
    406
  • 访问量
    1208666