Caching Tables
Another method to improve performance is to put small tables that are
frequently accessed in cache. The value of BUFFER_POOL_KEEP
determines the portion of the buffer cache that will not be flushed by
the LRU algorithm. This allows you to put certain tables in memory, which
improves performance when accessing those tables. This also makes sure
that, after accessing a table for the first time, it will always be kept
in the memory. Otherwise, it is possible that the table will get pushed
out of memory and will require disk access the next time it is used.
Be aware that the amount of memory allocated to the keep area is subtracted
from the overall buffer cache memory (defined by DB_BLOCK_BUFFERS
).
A good candidate for this type of operation is the S_LST_OF_VAL
table. The syntax for keeping a table in the cache is as follows:
ALTER TABLE S_LST_OF_VAL CACHE;