13.4.2 Reducing memory usage by re-evaluating the global buffers
You can reduce the HADB server's memory usage by, for example, canceling the allocation of unused global buffers and re-evaluating the number of pages specified for global buffers.
- Organization of this subsection
(1) Canceling the allocation of unused global buffers
The following describes the tuning method to be used when allocating global buffers dedicated to range indexes and table scan buffers.
■ If the -a option is specified for the adbbuff operand
-
Check the number of range index buffer page requests.
In the global buffer statistical information that is output when the adbstat command is executed, check whether 0 is output for the following item:
-
DBbuff_page_rng_request_cnt (number of range index buffer page requests)
If the value output to DBbuff_page_rng_request_cnt is 0, no range indexes might have been defined or a global buffer dedicated to range indexes might be allocated to a DB area that does not use range indexes.
In such a case, delete the -a option from the adbbuff operand. This might reduce the amount of memory that the HADB server uses.
-
-
Terminate the HADB server.
Terminate the HADB server by executing the adbstop command.
-
Change the server definition.
Delete the -a option from the adbbuff operand in the server definition.
-
Start the HADB server.
Execute the adbstart command to start the HADB server.
■ If the -v option is specified for the adbbuff operand
-
Check the number of table scan buffer page requests.
In the global buffer statistical information that is output when the adbstat command is executed, check whether 0 is output for the following item:
-
DBbuff_tblscan_request_cnt (number of table scan buffer page requests)
If the value output to DBbuff_tblscan_request_cnt is 0, a table scan buffer might have been allocated to a DB area in which an SQL statement that performs a table scan is not executed.
In such a case, delete the -v option from the adbbuff operand. This might reduce the amount of memory that the HADB server uses.
-
-
Terminate the HADB server.
Terminate the HADB server by executing the adbstop command.
-
Change the server definition.
Delete the -v option from the adbbuff operand in the server definition.
-
Start the HADB server.
Execute the adbstart command to start the HADB server.
- Note
-
For details about the adbbuff operand in the server definition, see the adbbuff operand in 7.2.11 Operands and options related to global buffers (command format).
(2) Re-evaluating the number of pages specified for global buffers
The following describes the tuning method to be used when the number of pages specified for global buffers is too large.
■ If the -p option is specified for the adbbuff operand
-
Check the number of global buffers.
In the global buffer statistical information that is output when the adbstat command is executed, check the values specified for the following two items:
-
DBbuff_page_use_cnt (number of allocated global buffers)
-
DBbuff_page_num (total number of global buffers)
If the value output to DBbuff_page_use_cnt is smaller than the value output to DBbuff_page_num, the value specified for the -p option of the adbbuff operand might be too large. If this case applies, go to step 2.
-
-
Terminate the HADB server.
Terminate the HADB server by executing the adbstop command.
-
Change the server definition.
Change the value specified for the -p option of the adbbuff operand in the server definition to the value determined by using the following formula. This might reduce the amount of memory that the HADB server uses.
-
Start the HADB server.
Execute the adbstart command to start the HADB server.
■ If the -a option is specified for the adbbuff operand
-
Check the number of range index buffers.
In the global buffer statistical information that is output when the adbstat command is executed, check the values specified for the following two items:
-
DBbuff_page_rng_use_cnt (number of allocated range index buffers)
-
DBbuff_page_rng_num (total number of range index buffers)
If the value output to DBbuff_page_rng_use_cnt is smaller than the value output to DBbuff_page_rng_num, the value specified for the -a option of the adbbuff operand might be too large. If this case applies, go to step 2.
-
-
Terminate the HADB server.
Terminate the HADB server by executing the adbstop command.
-
Change the server definition.
Change the value specified for the -a option of the adbbuff operand in the server definition to the value determined by using the following formula. This might reduce the amount of memory that the HADB server uses.
-
Start the HADB server.
Execute the adbstart command to start the HADB server.
- Note
-
For details about the adbbuff operand in the server definition, see the adbbuff operand in 7.2.11 Operands and options related to global buffers (command format).