|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Internals of the Oracle Data Buffers This section is a little more advanced and provides information about the internal mechanisms of the Oracle data buffers.
Oracle has always had RAM buffers with the goal of preventing expensive data block rereads from disk; however, the way the buffers internally handle the incoming data has evolved radically. Prior to Oracle8i, an incoming data block was placed at the front of the list in the buffer, and subsequent to the release of Oracle8i, the incoming block is placed in the middle of the buffer chain. New blocks are inserted into the middle of the buffer and their positions are adjusted according to access activity.
This scheme effectively partitions each data buffer into two sections: a hot section that contains the data used most recently; and a cold section containing the data used least recently.
This is a tremendous advance over the performance of earlier buffers. The midpoint insertion method essentially creates two subregions within the KEEP, RECYCLE, and DEFAULT pools. Each buffer pool has a hot and cold area, and only the data blocks that are requested repeatedly will migrate into the hot area of each pool. This method greatly improves the efficiency of the data buffers.
The size of the hot regions is internally configured by three hidden parameters: § _db_percent_hot_default § _db_percent_hot_keep § _db_percent_hot_recycle Oracle Corporation does not recommend changing these parameters. These parameters should only be altered by advanced DBAs who thoroughly understand the internal mechanisms of data buffers and wish to alter the performance of the buffers.
http://www.rampant-books.com/book_1002_oracle_tuning_definitive_reference_2nd_ed.htm
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||