Global buffers are allocated in shared memory. This shared memory is allocated as files on the disk that contains the HiRDB directory. Therefore, you should provide sufficient free disk space.
A maximum of 16 shared memory segments of the size specified with SHMMAX can be allocated in the system common definitions. Therefore, you need to define a global buffer within the range of the SHMMAX value (MB) times 16.
If a defined global buffer is too large to allocate in one shared memory segment, multiple shared memory segments are allocated, resulting in increased overhead for shared memory accesses.
Global buffers are allocated in shared memory and made resident in the memory. If more global buffer sectors are set than are actually needed, the amount of memory space being used for shared memory increases, which can have adverse effects on the system memory. Overhead for global buffer retrieval processing also increases. For these reasons, global buffers must be set so that the required minimum input/output performance is achieved.
To achieve the minimum input/output performance, global buffers should be set so that the overall hit rate for global buffers (update buffers hit rate + reference buffers hit rate) and the hit rate for reference buffers become high. This can be done by the following methods:
To improve the performance even more after setting the number of buffer sectors on the basis of the aforementioned considerations, the pdbufls command or the statistics analysis utility (pdstedit) can be used after the HiRDB system has been started.
If the pdbufls command is used, the number of buffer sectors must be set so that the overall global buffers hit rate becomes high.
If the statistics analysis utility is used, the update buffers hit rate and reference buffers hit rate should be checked, and the number of buffer sectors should be set so that the overall global buffers hit rate becomes high.
For details about the pdbufls command and the statistics analysis utility (pdstedit), see the manual HiRDB Version 6 Command Reference.
The number of buffer sectors is set in the -n option of the pdbuffer operand in the system common definition.