Functional Overview

This document provides an overview of the ADACMP utility.


COMPRESS Function Overview

The COMPRESS function edits and compresses data records that are to be loaded into the database:

graphics/cmp3_pfeilsyn.png

Input can be data records from:

  • a physical sequential data set (fixed- or variable-length records) supplied by the user; or

  • an existing Adabas file (that is, from ADACMP DECOMPRESS or ADAULD UNLOAD).

Warning:
ADACMP COMPRESS utility runs that specify an FDT (via the FDT parameter) but do not specify a FORMAT parameter and that run against a file with logically deleted fields require that the data include the values for the logically deleted fields. Failure to include these values could lead to incorrectly compressed records.

The logical structure and characteristics of the input data are described with field definition statements:

  • The FNDEF statement is used to define a field (or group of fields).

  • The SUBFN and SUPFN statements are used to define a subfield and a superfield, respectively.

  • The COLDE, HYPDE, PHONDE, SUBDE, and SUPDE statements are used to define a collation descriptor, hyperdescriptor, phonetic descriptor, subdescriptor and superdescriptor, respectively.

The field definitions provided are used to create the Adabas field definition table (FDT) for the file. Alternatively, you can use an existing Adabas FDT instead of providing field definitions (read about the FDT parameter).

If the fields in the input record are to be processed in an order that is different from their position in the input record, or if one or more fields are to be skipped, the FORMAT parameter may be used to indicate the order and location of the input fields.

The ADACMP COMPRESS function processes the input data as follows:

  • Checks numeric data for validity.

  • Removes trailing blanks from alphanumeric fields.

  • Removes leading zeros from numeric fields.

  • Packs numeric unpacked fields.

Fields defined with the fixed (FI) option are not compressed.

A user exit can be used to further edit the input data. For more information, read User Exit 6.

The output of the ADACMP COMPRESS function that is used as input to the ADALOD utility includes the FDT, compressed records, and on the utility report, the Data Storage space requirement (for the ADALOD DSSIZE parameter) and the Temp and Sort data set size estimates (TEMPSIZE and SORTSIZE).

The ADACMP COMPRESS function report also indicates:

  • the number of records processed;

  • the number of records rejected; and

  • the compression rate percentage.

A data set containing rejected records is also produced.

DECOMPRESS Function Overview

The DECOMPRESS function decompresses individual files:

graphics/cmp3_pfeilsyn2.png

Input data can be decompressed from data records in existing Adabas files:

  • unloaded using the ADAULD (file unload) utility; or

  • directly (without separate file unloading).

The INFILE parameter of ADACMP DECOMPRESS is used for Adabas files that are directly decompressed. As part of the decompression process, the target file is unloaded without FDT information, which can save time when decompressing larger files.

The output of the ADACMP DECOMPRESS function includes ISNs if the ISN parameter is specified. The DECOMPRESS output may be used as input to a non-Adabas program or as input to the COMPRESS function, once any desired changes to the data structure or field definitions for the file are completed.