您的位置:首页 > 数据库 > Oracle

Oracle Internal之Block Cle…

2012-11-12 19:25 543 查看
原文地址:Oracle Internal之Block Cleanout 1作者:顾问为什么会有Block Cleanouts? Oracle
server在执行一个交易(transaction)时会保存交易数据在数据块(data
block)本身,并且一个交易有可能修改大量的数据块,因此交易需要清理这些在数据块自己上的交易数据当一个交易完成commit。

那些东西需要cleaned out?

  1. Row Locks

  2. ITL Entry:

     
- Commit flags

     
- Free Space Credit/Commit SCN

Deferred Block Cleanout:

   A transaction commit was a
simple update to the relevant undo segment header.

   The data block cleanout was
left to the next reader of the modified block

Fast Block Cleanout: This is the default action.

   Modified blocks are
'memorized' by a transaction. On transaction commit, cleanout is
attempted

   on those blocks in memory(up
to a limit 20 blocks). For any blocks above this threshold,
or

   aged out of memory, or
currently pinned by another process deferred block cleanout will
be

   still used.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: