Nonstop Database, HiRDB Version 9 System Operation Guide

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

23.2 Tuning deferred write processing

When sync is specified in the pd_dbsync_point operand in the system common definition or the pd_dbsync_point operand is omitted, HiRDB executes deferred write processing to reduce the number of disk output operations. Deferred write processing improves performance by processing RDAREAs distributed among multiple disks in units of disks.

Therefore, when character special files are used for a HiRDB file system area in which RDAREAs are allocated and the RDAREAs are allocated on a single disk, the benefits of deferred write processing are not obtained.

Information to be collected
Deferred write processing statistical information is collected by the statistics analysis utility.
Organization of this section
(1) Check the parallel level for each disk volume (PMAX, PMIN)
(2) Check the average value (AVG)

(1) Check the parallel level for each disk volume (PMAX, PMIN)

Purpose
This information is collected in order to determine how appropriate the disk volumes (HiRDB file system areas) allocated to the update-target RDAREA are, based on the degree of dispersion of the disk volumes (HiRDB file system areas) that became the output destination during deferred write processing.

Evaluating the analysis results
Therefore, when character special files are used for a HiRDB file system area, check whether the maximum and minimum values for parallelism for each disk volume are 1. If they are 1, output operations might be concentrated on certain disk volumes (HiRDB file system areas). Also check whether the maximum value is equal to or greater than the value specified for pd_dfw_awt_process, if the facility for parallel writes in deferred write processing is used.

Actions to be taken
  1. Allocate the RDAREAs that will be updated to different disk volumes (HiRDB file system areas).
  2. Divide and store tables in indexes that will be updated in RDAREAs consisting of different disk volumes (HiRDB file system areas).

(2) Check the average value (AVG)

Purpose
This information is collected in order to determine how appropriate the global buffers are on the basis of the average updated pages output during the following processing.
Trigger output
When the number of updated pages in the global buffers reaches a given number of buffers, the pages are output to disk.
Note that when the deferred write trigger request rate is enabled, pages are output to disk when the specified value is reached. You specify this value in the pd_dbbuff_rate_updpage operand.
The number of pages output to disk is calculated by HiRDB on the basis of the output page percentage specified in the pdbuffer operand's -w option.
Pre-sync output
A pre-sync point is set internally in order to reduce the number of pages to be output to the disk at a synchronization point. Pre-sync processing involves writing updated pages from global buffer to disk prior to a synchronization point so that fewer pages need to be output during the synchronization point dump.
Synchronization point dump output
All updated pages are output from global buffer to disk at a synchronization point. Pre-sync output can greatly reduce the time required for output processing during a synchronization point dump.
Database synchronization point dump output
The contents of the update buffer are committed to the database at a synchronization point trigger at which a synchronization point dump cannot be enabled.
RDAREA synchronization point dump output
All updated pages corresponding to an RDAREA are output to the disk.

Evaluating the analysis results
When the average number of output pages is too small
Check if the buffer flushes count is greater than the page outputs count during deferred write processing. If so, check the global buffer pool whose data is not updated frequently.
  1. If the update page buffer hit rate is high and the number of pages output during deferred write processing is small, there should be no problem.
  2. If the update page buffer hit rate is low and the number of pages output during deferred write processing is small, the synchronization point dump interval should be reduced.
The following formula can be used to obtain the average number of output pages:
[Figure]
a: Output pages count (OUT PAGE)
b: Number of synchronization point dump pages (SYNCW)
c: Deferred write processing activations count (EXEC)
d: Synchronization points count (SYNC)
n: Number of global buffer pools defined
For a HiRDB parallel server configuration
A specific back-end server might have a high output pages count for one of the following reasons:
  1. A frequently updated table is stored in the back-end server.
  2. Update processing is concentrated on a specific key range of a partitioned table.

Actions to be taken
When write operations are concentrated on a specific global buffer:
  1. If multiple RDAREAs are allocated to the global buffer pool, allocate separate global buffers for the RDAREAs.
  2. If a specific server is used to update multiple tables, each table should be stored in a different back-end server.
When multiple RDAREAs are defined on the same disk
Allocate each RDAREA on a separate disk to improve the I/O parallel level.