Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Block Header Size Confusion
On Nov 25, 4:01 pm, "Dereck L. Dietz" <diet..._at_ameritech.net> wrote:
> In reading a study guide for Oracle 9i it described the data block headers.
> One item it mentions is the Row Directory which it states occupies (4 * the
> number of rows) bytes.
>
> The other book I used to get the formula I have been using to "guestimate"
> table/index sizing was the Oracle 8 DBA Manual and it just had the block
> overhead as 90 for tables and 161 for indexes.
>
> My question is probably a simple one and I apologize if it is but when it
> states (4 * the number of rows) am I correct in thinking it is referring to
> the number of rows in the data BLOCK and not the entire table?
>
> Another question is, isn't this a Catch-22 situation? It seems that in
> order to know what the block overhead is you need to know how many rows will
> be in the block; but in order to know how many rows will fit in the block
> you need to know the free bytes in the block (block size minus the block
> overhead).
>
> Thanks.
As I recall, in Oracle 8 it was a guestimate. If you had a decent estimate of the row size, then you get a first pass extimate of the rows per block. Computing the overhead then might cause the row count to change.
So you are right in seeing the catch-22, but it isn't a fatal situation.
HTH,
Ed
Received on Sat Nov 25 2006 - 22:14:23 CST
![]() |
![]() |