Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Oracle Caching
Basically :
Your request some data,
Oracle checks the buffer cache to see if it is there, if so, you get it
quick.
If not, oracle goes to disc and physically reads the data into the
buffer cache, then you get it from there.
Two lists are used to manage the blocks in the cache - the dirty list which holds blocks that have been updated but have not yet been written back to disc, and the Least Recently Used list which manages blocks that are free, pinned and some dirty blocks which haven't been moved over to the dirty list yet.
As you request data, the block is moved to the most recently used end of the LRU, so blocks that are read a lot, tend to hang around the MRU end of the LRU list (!!!), blocks that haven't been accessed for a while, tend to slide gracefully towards the LRU end of the LRU list, and at some point, fall off.
Check out the Oracle Comcempts Manual, chapter 6 for full details. If you don't have it, logon to www.docs.oracle.com and check out the docs in the 'database' section.
Regards,
Norman
Norman Dunbar EMail: NDunbar_at_LynxFinancialSystems.co.uk Database/Unix administrator Phone: 0113 289 6265 Lynx Financial Systems Ltd. Fax: 0113 201 7265 URL: http://www.LynxFinancialSystems.com
------------------------------------------------------------------------
![]() |
![]() |