[bbk4975] 第103集 -第13章 - 表空间管理 01

PCTFREE参数的用途:主要是用来保障UPDATE操作的顺利执行,假如在一个block中的数据,都已经满了的情况下,假如再想更新块中的数据的时候,就无法直接保存在本块中了,就会产生row chain or row migration,存放在其他块中,这样本来可以通过一个块就能操作的步骤,现在必须通过读取两个块来完成,影响了执行效率,降低了性能.

PCTFREE参数值,如果表本身修改的比较频繁,那么此值就可以设置的大一点,否则可以设置小一点.如果是数据仓库系统,此值就可以设置为0,因为不存在数据修改.

使用自动段管理的前提,表空间必须是本地管理方式.

row migration:当修改某一行数据的时候,行的链接能够在一个新的块中将本行数据完全能够存放下来的时候,这个时候就会发生行的迁移(row migration)

Block Space Management

Row Chaining and Migration

Example:

  • On update:Row length increases,exceeding the available free space in the block.
  • Data needs to be stored in a new block.
  • Original physical identifier of row(ROWID) is preserved.
  • The Oracle database server needs to read two blocks to retrieve data.
  • The segment advisor finds segments containing the migrated rows.
  • There is automatic coalescing of fragmented free space inside the block.

posted @ 2013-06-08 14:08  ArcerZhang  阅读(160)  评论(0编辑  收藏  举报