块清除:由于oracle在进行事物操作时在数据块上存储数据块的行级锁(lb-lock byte)和itl信息(包括提交标志和scn等)所以oracle在事物提交之后需要清除这些事物数据(但是会保留xid和uba)这叫作块清除。
块清除分两种:
快速块清除(fast block cleanout):
如果一个事务(transaction)修改不超过10%buffer cache的数据块时,oracle做的是fast commit cleanout。
延迟块清除(delayed block cleanout)
如果一个事务(transaction)修改的块超过10% buffer cache,那么"超过的块"就执行delayed block cleanout
或者
在事务commit前,修改的数据块已经写入硬盘,当发生commit时,oracle并不会把block重新读入内存来做cleanout,这样成本太高.而是把cleanout留到下一次对此块的访问(select,update)时完成。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20844861/viewspace-594774/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/20844861/viewspace-594774/