Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

ISAM pools

Particularly the non-sequential processing of ISAM files tends to produce a high I/O rate. NK-ISAM reduces this I/O rate and enhances the performance significantly by processing the files in appropriately sized ISAM pools which are used to buffer file blocks.

K-ISAM does not use such pools. When "ISAM" is used in the description below, NK-ISAM is always meant, never K-ISAM.

ISAM pools can be created and managed both explicitly by the user using special macros and implicitly by DMS.

In addition, two areas of application are distinguished for pools:

  • A task-local ISAM pool (SCOPE=*TASK) is stored in the class 5 storage of the owner task. No other tasks may access this storage - or the ISAM pool. A task-local ISAM pool is consequently only suitable for ISAM files which are opened in SHARUPD=NO mode.

  • A cross-task ISAM pool (SCOPE=*HOST-SYSTEM) is stored in a privileged data space which all tasks in the system can access. Details on this enhanced concept are provided in section "ISAM pools in data spaces".A cross-task pool is essential for processing ISAM files in SHARUPD=YES mode. It would be possible to edit ISAM files opened in SHARUPD=NO mode in cross-task pools, too. However, for performance reasons (e.g. superfluous serialization) this is not recommended.

SCOPE=*USER-GROUP and SCOPE=*USER-ID are only accepted for reasons of compatibility. Internally, however, they are mapped to SCOPE=*HOST-SYSTEM (cross-task pool).

The commands and macros for managing task-local ISAM pools are also available to RFA (see the "RFA" manual [6 (Related publications)]).

An overview of the ISAM pool macros can be found in section "User ISAM pools".

Figure 34: ISAM pool

File A is being read by user programs PROG A and PROG B, and file B is being created by PROG B. The ISAMWORK ISAM pool is a cross-task pool.