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

Home -> Community -> Mailing Lists -> Oracle-L -> Advice about why not setting multi-block sizes

Advice about why not setting multi-block sizes

From: Juan Carlos Reyes Pacheco <juancarlosreyesp_at_gmail.com>
Date: Mon, 1 Aug 2005 16:24:29 -0400
Message-ID: <cd4305c105080113247d049218@mail.gmail.com>


Hi Lex,
If you can helpme to understand please

> I repeat that this is a *bad* advice, regardless whether your database is very
> big or very small.
> there are better ways to influence cache performance/behavior, without the
> disadvantages of multiple block sizes and a segmented buffer cache. a segmented
> cache needs constant attention and (re)configuration, and even then it always
> leads to suboptimal shared memory usage.

My logic goes in this way, I have different system on the same database. One is an accountatn sytem and other is a software production system.

The accounting sytem has configured their buffers. If I create a different tablespace of 32K only for that table(table storing blobs), i think:
1) this is not going to bother memory configuration of accounting system. 2) this will improve reads, because forms and rdfs are big, bigger block size will be better.
3) This allows me to set a reduced memory to that units, for example I don't want oracle use 100 MB for this table, I want only to use 20MB, so I can restring more efficiently the memory for that specific table.

Now this table is used for few users(10), several times a day. not too frequently.

I moved all indexes to a different tablespace for recovery purposes, this means if some day a block is damaged and this block is in the index tablespace, and there is no way to recreate it, I know I can recreate the tablespace and reindex, everything and all is ok.

I use a 16k block size because
1) 16k blocksize is better for index access. 2) I can reserve memory only for indexes, so I can give more memory for index access, because most of access are through indexes, not through full-scans.
I can't optimize database per database, some customers have 4 database in the same server. So what I want is to guarantee an area for indexes. They use virtual memory and this works ok for them, they don't want to buy another server, they are happy so, finally is a small database.

Please Lex, could you helpme to, explaining your position about it: Why is wrong, how should I do that.

Thanks a lot for your advice.

--
http://www.freelists.org/webpage/oracle-l
Received on Mon Aug 01 2005 - 15:28:07 CDT

Original text of this message

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