Nonstop Database, HiRDB Version 9 Installation and Design Guide
The size of the memory required for each unit of a HiRDB parallel server configuration is the sum of the items listed in the following table.
For details about the value specified in the shmmax operating system parameter (for Solaris, shmsys:shminfo_shmmax; for Linux, SHMMAX), see Chapter 20. Specifying OS Parameters.
If you increase the size of shared memory, it might affect transaction performance by increasing the number of page faults. For each operand, consult the guidelines for your particular system and then specify the most appropriate value.
Table 15-7 Size of memory required for each unit of a HiRDB parallel server configuration
| Item | Required memory (KB) | |||
|---|---|---|---|---|
| Process private area | Process private area used by all unit controller processes |
|
||
| Process private area used by each server process#1, #2 | Front-end server | (N + h + m + p + q)
|
||
| Dictionary server | pd_work_buff_mode=each specified | {P + i + m + (a + 9)
|
||
| pd_work_buff_ mode=pool specified or omitted |
|
|||
| Back-end server | pd_work_buff_ mode=each specified | {Q + g + (a + 9)
|
||
| pd_work_buff_ mode=pool specified or omitted |
|
|||
| Shared memory | Space used by the unit controller in the unit controller shared memory | |||
| Space used by each server in the unit controller shared memory#1 | e | |||
| Global buffer shared memory | F | |||
| In-memory data processing shared memory | U | |||
| Utility shared memory | u | |||
| Security audit information buffer shared memory | Value specified for pd_audit_def_buffer_size |
|||
| Inter-process memory communication shared memory#3 | j |
|||
#3: Add this value if you have specified PDIPC=MEMORY in the client environment definition. For details about the inter-process memory communication facility and client environment definitions, see the HiRDB Version 9 UAP Development Guide. If either the HiRDB server or the HiRDB client is in 32-bit mode, the system allocates the shared memory for the inter-process memory communication facility in the 32-bit address space.
| (90 + 90 i=1 |
| {(Number of files#1 + number of extensions#2) |
| 347 + Memory used by the work tables for management of the HiRDB file system area + Memory used by the system logs for management of the HiRDB file system area + 90 i=1 |
| {(Number of files#1 + number of extensions#2) |
| (D + E + F) |
| Variable | Value |
|---|---|
| D |
+ {48
+ {64 Number of tables: 62 + MAX{value of pd_max_access_tables, 500} |
| E | b1 b1: When the record length of the server status file < 4,096 MAX(( + ( + 0.7) When 4,096 MAX( When 12,288 MAX( X: When the number of RDAREAS in server When 3,401 When 6,801 b2: When the record length of the status file for server < 4,096 ( + ( + 0.7) When 4,096 When 12,288 Y: When the number of RDAREAS in server When 10,201 When 5,672,511 When 11,334,821 |
| F | If commit is specified in the pd_dbsync_point operand, add: + 112 |
| G | If 1 or a greater value is specified in the pd_inner_replica_control operand, add:
|
| H | For back-end servers in which the number of HiRDB file system areas that store RDAREAs created in a character special file in a server is 1,001 or more, add:
|
| OS | Value of J | Value of K | Value of L | Value of M | Value of N | Value of P | Value of Q |
|---|---|---|---|---|---|---|---|
| HP-UX (32-bit mode) | 80,000 | 9,700 | 12,600 | 2,800 | 4,700 | 3,800 | 3,600 |
| HP-UX (32-bit-mode POSIX library version) | 127,300 | 10,300 | 12,900 | 3,000 | 5,200 | 4,300 | 5,000 |
| HP-UX (64-bit mode) | 80,700 | 10,300 | 13,400 | 2,800 | 5,100 | 4,300 | 4,000 |
| HP-UX (IPF) | 200,500 | 15,100 | 17,900 | 2,600 | 7,100 | 8,100 | 10,600 |
| AIX (32-bit mode) | 67,700 | 8,400 | 10,700 | 2,200 | 5,100 | 4,100 | 4,300 |
| AIX (32-bit-mode POSIX library version) | 123,700 | 16,800 | 19,200 | 5,000 | 7,900 | 7,300 | 7,400 |
| AIX (64-bit mode) | 123,700 | 25,000 | 31,200 | 6,000 | 11,900 | 11,700 | 13,400 |
| Solaris (32-bit mode) | 71,100 | 6,100 | 7,600 | 1,400 | 2,600 | 2,100 | 4,100 |
| Solaris (32-bit-mode POSIX library version) | 121,100 | 6,800 | 8,200 | 1,700 | 2,800 | 2,300 | 4,400 |
| Solaris (64-bit mode) | 106,900 | 9,700 | 11,900 | 12,100 | 4,100 | 3,300 | 6,400 |
| Linux (32-bit mode) | 74,200 | 6,700 | 8,800 | 1,700 | 2,900 | 4,300 | 4,300 |
| Linux (EM64T) | 134,600 | 24,100 | 31,700 | 7,600 | 13,300 | 15,400 | 14,700 |
| Linux 6 (64-bit x86_64) | 106,400 | 12,300 | 14,600 | 1,900 | 5,400 | 5,800 | 7,200 |
Table 15-8 Procedure for obtaining the number of work tables for each SQL statement
| SQL statement | Procedure for obtaining the number of work tables |
|---|---|
| SELECT statement INSERT(-SELECT) statement |
When none of 1-8 as follows are applicable: 0 When any of 1-8 as follows are applicable: Sum of the applicable values from 1-8
|
| UPDATE statement DELETE statement |
Number of columns with index defined in the search condition + 1 |
| DROP SCHEMA statement DROP TABLE statement DROP INDEX statement CREATE INDEX statement REVOKE statement to revoke access privilege |
2 |
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.