RE: os cache vs. db cache

  • From: "Allen, Brandon" <Brandon.Allen@xxxxxxxxxxx>
  • To: <robyn.sands@xxxxxxxxx>, "oracle-l" <oracle-l@xxxxxxxxxxxxx>
  • Date: Mon, 9 Jul 2007 12:59:46 -0700

I'd be curious to hear anyone's reasons for preferring OS cache to DB
It seems pretty clear cut to me that it is better to allow Oracle to
manage its own cache since it has much more knowledge available
internally to help predict which blocks are most likely to be needed
again.  I've had good results with CIO (Concurrent, a.k.a non-buffered,
non-inode-locking I/O) on AIX, but I did increase db_cache_size to make
up for the lack of filesystem buffering - in one case from 600M to
1500M, in another I just used CIO from the beginning so there was no
before/after comparison, but performance has been excellent with CIO.
In the case where I switched from regular, buffered I/O to CIO and
increased db_cache_size from 600M to 1500M, the performance of a fixed
set of batch jobs improved from an average runtime of 166 minutes to 129
minutes - so a 22% reduction in runtime, but it's difficult to say how
much of that improvement was from switching to CIO and how much was just
due to the increase in db_cache_size alone.
Here's a great paper specifically on AIX CIO for more info:


From: oracle-l-bounce@xxxxxxxxxxxxx
[mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of Robyn

Over the years, I've read differing opinions on balancing the os cache
and the database cache. 

Privileged/Confidential Information may be contained in this message or 
attachments hereto. Please advise immediately if you or your employer do not 
consent to Internet email for messages of this kind. Opinions, conclusions and 
other information in this message that do not relate to the official business 
of this company shall be understood as neither given nor endorsed by it.

Other related posts: