Accessing a FOCUS Data Source (z/OS Only)

In this section:

How to:

MINIO is a new I/O buffering technique that improves performance by reducing I/O operations when accessing FOCUS data sources under z/OS. With MINIO set on, no block is ever read more than once, and therefore the number of reads performed is the same as the number of tracks present. This results in an overall reduction in elapsed times when reading and writing.

With FOCUS data sources that are not disorganized, MINIO can greatly reduce the number of I/O operations for TABLE and MODIFY commands. I/O reductions of up to 50% are achievable with MINIO. The actual reduction varies depending on data source structure and average numbers of children segments per parent segment. By reducing I/O operations, elapsed times for TABLE and MODIFY commands also drop.


Top of page

x
Syntax: How to Set MINIO
SET MINIO = {ON|OFF}

where:

ON

Does not read a block more than once; the number of reads performed will be the same as the number of tracks present. This results in an overall reduction in elapsed times when reading and writing. This value is the default.

OFF

Disables MINIO.


Top of page

x
Using MINIO

MINIO reduces CPU time slightly while slightly raising memory utilization. MINIO requires one track I/O buffer per referenced segment type. Between 40K and 48K of above-the-line virtual memory is needed per referenced segment.

When MINIO is enabled, FOCUS decides for each command whether or not to employ it, and which data sources to use it with. It is possible in executing a single command referencing several data sources that MINIO might be used for some but not for others. Data sources accessed via indexes, or physically disordered through online updates, are not candidates for MINIO buffering. Physical disorganization, in this case, means that the sequence of selected records jumps all over the data source, as opposed to progressing steadily forward. When disorganization occurs, MINIO abandons its buffering techniques and resorts to the standard I/O methodology.

When reading data sources, MINIO is used with TABLE, TABLEF, GRAPH, MATCH and during the DUMP phase of the REBUILD command, provided the target data source is not accessed via an index or is physically disorganized.

When writing to data sources, MINIO is used with MODIFY but never with MAINTAIN, provided there is no CRTFORM or COMMIT subcommand. CRTFORMs indicate online transaction processing, which requires that completed transactions be written out to the data source. COMMITs are explicit orders to do so. These events are incompatible with MINIO minimization logic and therefore rule out its use.

As with reads, using MINIO with MODIFY also requires that a data source be accessed sequentially. Attempts to access an index, or to update physically disorganized data sources can cause MINIO to be disabled. In addition, frequent repositioning to previously accessed records, even within well-organized data sources, will cause MINIO to be disabled.


Top of page

x
Determining If a Previous Command Used MINIO

How to:

Reference:

The ? STAT command is used to determine whether the previous data source access command employed MINIO.



x
Syntax: How to Determine If a Previous Command Used MINIO

To determine if a previous command used MINIO, issue the command:

? STAT


Example: Determining If a Previous Command Used MINIO

Typing ? STAT generates a screen similar to the following:

                     STATISTICS OF LAST COMMAND
 
RECORDS        =           0       SEGS CHNGD     =           0
LINES          =           0       SEGS DELTD     =           0
BASEIO         =          87       NOMATCH        =           0
TRACKIO        =          16       DUPLICATES     =           0
SORTIO         =           0       FORMAT ERRORS  =           0
SORT PAGES     =           0       INVALID CONDTS =           0
READS          =           1       OTHER REJECTS  =           0
TRANSACTIONS   =        1500       CACHE READS    =           0
ACCEPTED       =        1500       MERGES         =           0
SEGS INPUT     =        1500       SORT STRINGS   =           0
 
INTERNAL MATRIX CREATED: YES       AUTOINDEX USED:           NO
SORT USED:             FOCUS       AUTOPATH USED:            NO
MINIO USED:              YES

In the preceding example MINIO USED is displayed as YES. It may also display NO or DISABLED.



x
Reference: Restrictions for Using MINIO

Note the following restrictions when you are using the MINIO command:


Information Builders