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: sizing indexes, does anyone have an accurate script or algorithm?

Re: sizing indexes, does anyone have an accurate script or algorithm?

From: <mzawadzki_at_starnet.lenfest.com>
Date: 1998/04/01
Message-ID: <6ftv6p$jei$2@news1.fast.net>

Appendix A of the Oracle Server Administrators Guide

oradba <oradba_at_erols.com> wrote:

>--------------085240D5E031C4E2C69C38FF
>Content-Type: text/plain; charset=us-ascii
>Content-Transfer-Encoding: 7bit
 

>In terms of sizing a database you have two ways to go depening on your
>priorities.
 

>option 1 ) Priority is to get the job done quickly, easily and correctly.
>In this case you load a
> representative sample of the data, say 10%. You look to
>see how much space it
> used. Multiply by ten and that how much you need right
>now. If its a production
> system and the data is expected to double over a years
>time then you double the
> number , maybe triple it if you have space and want it
>set up once and for all.
 

>option 2) Priority is to impress management. Find sone convoluted formula
>and spend a great
> deal of tiime figuring out arcane data structure usage and
>have at least a 50%
> chance of getting it wrong . Spew lots of terminology to
>impress the unknowledgable.
> They will LOVE YOU.
 

>I'm serious.

>Nick Borrell wrote:
 

>> Does anyone have an index sizing script for Oracle8 (or 7) which they
>> are happy with, and willing to share? I really find it hard to believe
>> that there isn't an abundance of these scripts. Wouldn't it be logical
>> for Oracle to distribute sizing tools with OEM?
>>
>> I've spent quite some time going thru the Oracle8 documentation and
>> various other resources trying to accurately size or estimate the space
>> requirements for primary keys and unique indexes. The estimates are
>> generally well below the actual number of consumed blocks shown in
>> dba_segments.
>>
>> To test my scripts I've tended to create simple tables, with 500 or 1000
>> rows. Then I create a unique index, with an initial and next extent of
>> one block. Unfortunately, the results aren't very inspiring. For
>> example, if my estimate says I will need 4 blocks for the index, I have
>> found that it will actually consume 7 blocks. Yesterday I created an
>> index that was estimated to need 8 blocks, and actually consumed 18.
>>
>> The only immediate way I can see to improve things (immediately) is to
>> increase the overhead for branches from 10% to more like 80%, but that
>> would be ridiculous wouldn't it?
>>
>> I've repeatedly asked support for either a script or a better algorithm,
>> and got no where. (Although, one support person did tell me that I'd be
>> surprised to know how many people keep asking them about this.) I'm
>> still optimistic that they have the script I want, but that for some
>> reason I haven't given them exactly the right keyword to find it in
>> their database.
>>
>> So, can anyone provide me with a script (or TAR number to get one), that
>> is satisfactorily accurate? And how about sizing tables?
>>
>> Thanks in advance for any help,
>>
>> Nick Borrell
>> DBA/Developer
>> New Zealand Police
>> +64 237 2811 x5459

>--
>Only interested in San Francisco Bay area job opportunities

>--------------085240D5E031C4E2C69C38FF
>Content-Type: text/html; charset=us-ascii
>Content-Transfer-Encoding: 7bit
 

><HTML>
>In terms of sizing a database you have two ways to go depening on your
>priorities.
 

><P>option 1 ) Priority is to get the job done quickly, easily and correctly.&nbsp;
>In this case you load a
><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
>representative sample of the data, say 10%.&nbsp; You look to see how&nbsp;
>much space it
><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
>used.&nbsp;&nbsp; Multiply by ten and that how much you need right now.
>If its a production
><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
>system and the data is expected to double over a years time then you double
>the
><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
>number , maybe triple it if you have space and&nbsp; want it set up once
>and for all.
 

><P>option 2) Priority is to impress management.&nbsp; Find sone convoluted
>formula and spend a great
><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
>deal of tiime figuring out arcane data structure usage and have at least
>a 50%
><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
>chance of getting it wrong . Spew lots of terminology to impress the&nbsp;&nbsp;
>unknowledgable.
><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
>They will LOVE YOU.
 

><P>I'm serious.
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
><BR>&nbsp;
 

><P>Nick Borrell wrote:
><BLOCKQUOTE TYPE=CITE>Does anyone have an index sizing script for Oracle8
>(or 7) which they
><BR>are happy with, and willing to share? I really find it hard to believe
><BR>that there isn't an abundance of these scripts. Wouldn't it be logical
><BR>for Oracle to distribute sizing tools with OEM?
 

><P>I've spent quite some time going thru the Oracle8 documentation and
><BR>various other resources trying to accurately size or estimate the space
><BR>requirements for primary keys and unique indexes. The estimates are
><BR>generally well below the actual number of consumed blocks shown in
><BR>dba_segments.
 

><P>To test my scripts I've tended to create simple tables, with 500 or
>1000
><BR>rows. Then I create a unique index, with an initial and next extent
>of
><BR>one block. Unfortunately, the results aren't very inspiring. For
><BR>example, if my estimate says I will need 4 blocks for the index, I
>have
><BR>found that it will actually consume 7 blocks. Yesterday I created an
><BR>index that was estimated to need 8 blocks, and actually consumed 18.
 

><P>The only immediate way I can see to improve things (immediately)&nbsp;
>is to
><BR>increase the overhead for branches from 10% to more like 80%, but that
><BR>would be ridiculous wouldn't it?
 

><P>I've repeatedly asked support for either a script or a better algorithm,
><BR>and got no where. (Although, one support person did tell me that I'd
>be
><BR>surprised to know how many people keep asking them about this.) I'm
><BR>still optimistic that they have the script I want, but that for some
><BR>reason I haven't given them exactly the right keyword to find it in
><BR>their database.
 

><P>So, can anyone provide me with a script (or TAR number to get one),
>that
><BR>is satisfactorily accurate? And how about sizing tables?
 

><P>Thanks in advance for any help,
 

><P>Nick Borrell
><BR>DBA/Developer
><BR>New Zealand Police
><BR>+64 237 2811 x5459</BLOCKQUOTE>
>&nbsp;
><PRE>--&nbsp;
>Only interested in San Francisco Bay area job opportunities</PRE>
>&nbsp;</HTML>
 

>--------------085240D5E031C4E2C69C38FF--

Mark Zawadzki, late of Waynesboro, Va.
'...there is not a sprig of grass that shoots uninteresting to me.'

                                                 Thomas Jefferson, 1790. 
Received on Wed Apr 01 1998 - 00:00:00 CST

Original text of this message

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