First page Back Continue Last page Graphics
Keep and Recycle Caches
Used to reduce contention
- KEEP – Objects are pinned to cache
- Allocate with DB_KEEP_CACHE_SIZE
- RECYCLE – Objects are aged out
- Allocate with DB_RECYCLE_CACHE_SIZE
Notes:
The purpose of using multiple buffer caches is to separate certain datasets from the rest of an application, reducing the contention for the same resources within the database buffer cache.
The object of the KEEP buffer pool is to retain objects in memory, thus avoiding expensive I/O operations.
The RECYCLE buffer pool is good for data that is not referenced frequently. The recycle pool will age blocks fast - blocks can be replaced as soon as they are no longer needed. Thus, objects that we do not want cached should be placed in the recycle pool.
The BUFFER_POOL_KEEP and BUFFER_POOL_RECYCLE parameters have been deprecated in Oracle9i and have been replaced with the DB_KEEP_CACHE_SIZE and DB_RECYCLE_CACHE_SIZE parameters, which control the size of these memory areas.
Supplemental Notes
In Oracle9i the keep and recycle caches are separate memory areas defined in bytes and are not allocated out of the database buffer cache as they were in Oracle8i.
As with the DB_CACHE_SIZE parameter, the DB_KEEP_CACHE_SIZE and DB_RECYCLE_CACHE_SIZE parameters allocate blocks based on the standard database block size defined by DB_BLOCK_SIZE.