Data-dictionary cache
The first time that the database server accesses a table, it retrieves the information that it needs about the table (such as the column names and data types) from the system catalog tables on disk. After the database server has accessed the table, it places that information in the data-dictionary cache in shared memory.
Data-dictionary cache shows how
the database server uses this cache for multiple users. User 1 accesses
the column information for tabid 120 for the first time. The
database server puts the column information in the data-dictionary
cache. When user 2, user 3 and user 4 access the same table, the database
server does not have to read from disk to access the data-dictionary
information for the table. Instead, it reads the dictionary information
from the data-dictionary cache in memory.
The database server still places pages for system catalog tables in the buffer pool, as it does all other data and index pages. However, the data-dictionary cache offers an additional performance advantage, because the data-dictionary information is organized in a more efficient format and organized to allow fast retrieval.