Monday, September 04, 2006

Row chaining and Row Migration

row chaining and row migration.

If the table row length is bigger than a block, or if the table has LONG or LOB columns, it is difficult to fit one row entirely in one block. Oracle stores such rows in more than one block. This situation is unavoidable, and storing such rows in multiple blocks is known as row chaining.

In some cases, the row will fit into a block with other rows, but due to an update activity, the row length increases and no free space remains available to accommodate the modified row. Oracle then moves the entire row from its original block to a new block, leaving a pointer in the original block to refer to the new block. This process is known as row migration.

Both row migration and row chaining affect the performance of queries, because Oracle has to read more than one block to retrieve the row.
~

No comments: