Scalable Database Server, HiRDB Version 8 Description

[Contents][Glossary][Index][Back][Next]

6.8.1 Global buffers

A global buffer is a buffer that is used for input and output of data stored in the RDAREAs of a disk. Global buffers are allocated in the common memory. Buffers used for storing data for updating before the data in the database has been updated are called update buffers. Buffers that are used for referencing data or for storing data that has been updated in the database are called reference buffers.

Global buffers are always allocated for RDAREAs and indexes that store data. Table 6-9 lists the types of global buffers:

Table 6-9 Types of global buffers

Global buffer type Explanation
Data global buffers Global buffers used for input/output operations on table data. Data global buffers are allocated in units of RDAREAs.
Index global buffers Global buffers used for input/output operations on index data. Index global buffers are allocated in units of indexes.
LOB global buffers Global buffers used for input/output operations on LOB-attribute data. LOB global buffers are allocated in units of LOB RDAREAs.

You can improve performance even more by using these global buffers in combination. For example, when you separately define data global buffers and index global buffers, data and index searches each operate independently, even if they are running at the same time. Consequently, the number of index inputs/outputs can be reduced even for a full-text search of a large amount of data, resulting in reduced processing time. Figure 6-11 shows the concept of global buffers.

Figure 6-11 Concept of global buffers

[Figure]

Organization of this subsection
(1) Units for allocating global buffers
(2) Global buffer allocation procedures
(3) Dynamic updating of global buffers

(1) Units for allocating global buffers

(2) Global buffer allocation procedures

You can allocate global buffers by specifying the pdbuffer operand. The following examples show the use of the pdbuffer operand to allocate global buffers:

Examples
pdbuffer -a gbuf01 -r RDAREA01,RDAREA02 -n 1000     1
pdbuffer -a gbuf01 -r LOBAREA01 -n 1000             2
pdbuffer -a gbuf01 -i USER01.INDX01 -n 1000         3
pdbuffer -a gbuf01 -b LOBAREA02 -n 1000             4

Explanation
  1. Allocates a data global buffer to two RDAREAs (RDAREA01 and RDAREA02).
  2. Allocates a data global buffer to a LOB RDAREA (LOBAREA01).
  3. Allocates an index global buffer to an index (USER01.INDX01).
  4. Allocates a LOB global buffer to a LOB RDAREA (LOBAREA01).

For details about the pdbuffer operand, see the HiRDB Version 8 System Definition.

(3) Dynamic updating of global buffers

Because you must modify the pdbuffer operand to add, change, or delete global buffers, you normally need to stop HiRDB to perform this operation. However, if you install HiRDB Advanced High Availability, you can use the pdbufmod command to add, change, and delete global buffers while HiRDB is running. This is called dynamic updating of global buffers. As use examples, we recommend that you perform dynamic updating of global buffers in the following cases:

For details about dynamic updating of global buffers, see the HiRDB Version 8 System Operation Guide.