Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle block size - OS block size

Re: Oracle block size - OS block size

From: Brian Tkatch <SPAMBLOCK.Maxwell_Smart_at_ThePentagon.com.SPAMBLOCK>
Date: Sun, 17 Jun 2001 13:16:01 GMT
Message-ID: <3b2ca4af.249678078@news.alt.net>

On Sat, 16 Jun 2001 10:45:43 +1000, "Howard J. Rogers" <howardjr_at_www.com> wrote:

>Who cares about wasting 4K, or even 7.9K? Even multiplied 1000 times,
>that's a mammoth 7.9M (unless my maths is even worse than I thought). Even
>with 10000 such small tables, you'd potentially be wasting less than a Gig.
>You honestly want to trade performance against that amount of disk space?
>
>HJR
That's assuming that your extent is only one block. However:

<<<
The default value is the size of 5 data blocks. The minimum value is the size of 2 data blocks for nonbitmapped segments or 3 data blocks for bitmapped segments, plus one data block for each free list group you specify.
>>>

Wasting 7.9k. Multiply by 10,000 tables is 79000k. That gives you 77.1484375 meg. Not much. With at least two data blocks plus one for the free list we'll multiply by three to get 231.4453125 meg.

In a dictionary-managed tablespoace, this also assumes that you have that exact amount of data blocks free contiguosly in the tablespace.

<<<
Oracle searches for a contiguous set of data blocks that matches the size of new extent plus one block to reduce internal fragmentation. (The size is rounded up to the size of the minimal extent for that tablespace, if necessary.) For example, if a new extent requires 19 data blocks, Oracle searches for exactly 20 contiguous data blocks. If the new extent is 5 or fewer blocks, Oracle does not add an extra block to the request.
>>>

Wouldn't that add a fourth block then to each extent? Which brings the total to 308.59375 meg.

This also assumes that your are not using a primary key. A primary key would force an index which now needs an index segment.

<<<
Every nonpartitioned index in an Oracle database has a single index segment to hold all of its data. For a partitioned index, every partition has a single index segment to hold its data.
>>>

Which I would guess dobles the wasted space. Altogether, it is much less then a gig. But then it matters how you do backups.

Did I get this right?

Brian Received on Sun Jun 17 2001 - 08:16:01 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US