All regular table data and indexes for a database are manipulated within the database's buffer pool area. A database must have at least one buffer pool associated with it but can use multiple buffer pools. The buffer pools are the work area for the database, and all searching for and manipulation of the data and indexes must take place within the buffer pools. In order for DB2 to scan a table or an index, the pages of the table or index must be in the database's buffer pool (or buffer pools). If the required page is already in the buffer pool, DB2 can start to work on the page immediately. If the page is not in the buffer pool, DB2 must read the page from disk and position it in the buffer pool(s) before it can be manipulated. Because most data manipulation takes place in the database buffer pools, configuring the buffer pools is the single most important tuning area for DB2 Universal Database (UDB) databases.
The database buffer pools have a profound effect on the overall performance of the database and, as such, there have been a number of enhancements to the manner in which buffer pools can be created and managed in DB2 UDB Version 8. This chapter will focus on the creation, management, and monitoring of buffer pools in DB2 UDB Version 8 to provide optimal performance for the database.