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: OS block size

Re: OS block size

From: Howard J. Rogers <howardjr_at_www.com>
Date: Tue, 27 Mar 2001 22:31:15 +1000
Message-ID: <3ac0882d$1@news.iprimus.com.au>

"Dave Haas" <davidh_at_--nospam--hotmail.com> wrote in message news:sUUv6.62876$tr5.6742177_at_news1.telusplanet.net...
> Hi all.
>
> Block size and tablespace size not really related (let the flaming begin
 ...
> :)
>
> The block size of the database is essentially determined from a
 guesstimate
> of the type of load the server will be experiencing.

Utter nonsense (and we've been round this one time and time again). See Steve Adams' web site for his article 'Why a Large Database Block Size': Most Unixes should use 8K blocks, and NT should be using 16K or so. Block size is definitely an O/S issue, not a 'what do I want to use this database for' issue.

>A smaller block size
> (say 4k) increases the number of buffers that can be held in a given
 buffer
> cache and reduces the likelihood of concurrent processes needing the same
> block at the same time. However, it isn't good for ramming sheer amounts
 of
> data through the system. So, the general rule of thumb is smaller blocks
> for OLTP and bigger for something like a warehouse.
>

Block contention is most definitely a worry for OLTP systems. Curing it by adopting a small block size is rather like curing a headache by cutting off your head. There are other, better and more scientific methods of managing the issue (initrans and maxtrans springs to mind).

Regards
HJR
> Technically the block has to be one of 2k, 4k, 8k, 16k, 32k and on some
> platforms you can get 64k blocks (although I have never seen a system come
> anywhere near that). Yes, it should be a multiple of the drive access
> minimum read buffer, but even then, with the caching controllers these
 days
> that's not an issue. Most controllers employ a mechanism that will read
> more off the platter in a single read into the internal drive buffer,
> irregardless of what you actually requested.
>
> HTH,
>
> Dave Haas
>
>
> "Daniel A. Morgan" <dmorgan_at_exesolutions.com> wrote in message
> news:3ABFF1F3.E0F2D9A0_at_exesolutions.com...
> > > The DB_BLOCK_SIZE is meant to be a multiple of the OS block size. But
 how
> > > can one find out the block size for NT/Unix for example?
> >
> > It is the block size of your tablespaces ... not of the O/S.
> >
> > Look in your init.ora file.
> >
> > Daniel A. Morgan
> >
>
>
Received on Tue Mar 27 2001 - 06:31:15 CST

Original text of this message

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