oracle block cleanout块清除_延迟块清除

       
1,oracle延迟块清除是基于io性能的考虑而设计
2,设想一个UPDATE大量数据的操作,因为执行时间较长,一部分已修改的块已被缓冲池flush out写至磁盘,
  当UPDATE操作完成执行COMMIT操作时,则需要将那些已写至磁盘的数据块重新读入,这将产生大量的io
3,针对上述情况产生延迟块清除

何时发生延迟块清除:
1,在更新过程中,被缓冲池flush out写至磁盘的块
2,若更新操作涉及的块超过了块缓冲区缓存的10%时,超出的部分块。      
3,虽然commit不会对这些已flush到磁盘的数据块进行清除块itl标志操作;
 但会修改回滚段的段头
  回滚段的段头包括了段中的事务的字典,COMMIT操作将本事务转化为非ACTIVE状态。
4,当下一次操作如SELECT,UPDATE,INSERT或DELETE访问到这些块(已flush到磁盘的数据块时)时可能需要在读入后完成块清除,这样的操作称之为块延迟清除
5,具体如何操作呢?
  1,块延迟清除通过事务槽上的回滚段号(已flush回磁盘并重读回buffer cache的数据块之itl),槽号等信息访问回滚段头的事务字典;
    2,此时回滚段头的事务字典标记已是非active状态;则清除块上的itl相关信息
6,一般情况,延迟块清除多发生于select操作中

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

转载于:http://blog.itpub.net/9240380/viewspace-756754/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值