The role and importance of Db2 group buffer pools in data sharing groups
In a parallel sysplex environment two or more DB2® subsystems can be grouped in a so-called data sharing group to share a single set of data while maintaining data integrity.
Each member, respectively Db2 subsystem, of a data sharing group continues to own its local set of buffer pools for the purposes and benefits described so far. However, to coordinate the flow of data between multiple subsystems and the shared set of physical I/Os, a common set of buffer pools is required as intermediary. This set is called group buffer pool because it serves all members of a data sharing group. Group buffer pools (GBPs) are located in a coupling facility (CF), the piece of hardware that provides a shared memory capability in a parallel sysplex environment.
Db2 provides the necessary data sharing mechanisms for locking and caching of data to ensure data coherence among member and group buffer pools, and to ensure data consistency in the entire data sharing group. Further, Db2 provides commands to create, alter, and monitor group buffer pools, similar to commands for buffer pools of individual subsystems.
With regard to performance, it can easily be seen that group buffer pools are subject to similar criteria than the members' buffer pools: They prefetch data from disks in advance, cache it for use by the members' buffer pools, and cast out data to disks asynchronously. The important point is that the activity in group buffer pools is the cumulative activity of the members' buffer pools. Therefore, it is even more essential to frequently monitor and tune the performance of group buffer pools to maintain a high data throughput.
For a detailed introduction to Db2 data sharing and group buffer pools, see Db2 11 Data Sharing: Planning and Administration.