Hitachi

Hitachi Advanced Database Setup and Operation Guide


2.20.1 Memory used by the HADB server

The HADB server uses shared memory and process memory. The following bullet points explain the memory used by the HADB server.

■ Shared memory

The following types of memory are allocated in shared memory:

  • Process common memory

    Process common memory stores the information needed for starting and controlling the HADB server processes.

  • Memory for managing shared memory

    Memory for managing shared memory stores management information for the shared memory that is used by the HADB server.

  • Memory for global buffers

    Memory for global buffers stores the following buffers:

    • Global buffers used for database input/output processing

    • Global buffers for global work tables that are used for global work table input/output processing

    Note

    When multiple processing real threads are used to process one SQL statement, a global work table is created so that the data in the work table can be shared among those processing real threads.

  • Real thread private memory

    Real thread private memory stores the information needed by the processing real threads that process an SQL statement or a command. One real thread private memory area is allocated to each processing real thread. Multiple processing real threads are run within an HADB server process, and the information required for each of those processing real threads is stored in real thread private memory.

■ Process memory

Heap memory is allocated in process memory. The HADB server uses heap memory during command execution.

The following figure shows the memory structure of the HADB server.

Figure 2‒74: Memory structure of HADB servers

[Figure]

Explanation
  • Multiple real thread private memory areas are allocated within shared memory.

  • Multiple processing real threads are used to process one SQL statement or one command. Each of these processing real threads uses one real thread private memory.

  • In addition to the real thread private memory areas that are used when SQL statements and commands are executed, one real thread private memory area is allocated for use by the system.

The following bullet points explain the areas and buffers that are allocated in real thread private memory.

Note

For details about the following types of processing, see the relevant sections in the HADB Application Development Guide.

  • Local hash grouping and global hash grouping: Grouping methods

  • Hash join: Table joining methods

  • Hash execution as a method for processing subqueries: How to process subqueries

  • Hash execution as a method for processing SELECT DISTINCT: Method for processing SELECT DISTINCT

  • Hash execution as a method for processing the set operation: Methods for processing set operations