Three compression techniques are available for
compressed format data sets. They are DBB-based compression, tailored
compression, and zEnterprise® data
compression (zEDC). These techniques determine the method used
to derive a compression dictionary for the data sets:
- DBB-based compression (also referred
to as GENERIC). With DBB-based compression (the original form
of compression used with both sequential and VSAM KSDS compressed
format data sets), the system selects a set of dictionary building
blocks (DBBs), found in SYS1.DBBLIB, which best reflects the initial
data written to the data set. The system can later reconstruct the
dictionary by using the information in the dictionary token stored
in the catalog.
- Tailored
compression. With tailored compression, the system attempts to
derive a compression dictionary tailored specifically to the initial
data written to the data set. Once derived, the compression dictionary
is stored in system blocks which are imbedded within the data set
itself. An OPEN for input reconstructs the dictionary by reading in
the system blocks containing the dictionary.
This form of compression
is not supported for VSAM KSDSs.
- zEnterprise data
compression (zEDC). With zEDC compression, no separate dictionary
needs to be created, as zEDC compression hides the dictionary in the
data stream. A new dictionary starts in each compression unit. The
system can decompress the segment as is.
When creating a zEDC-compressed
format data set, you can specify either
"zEDC Required" or
"zEDC
Preferred," which indicates how the system should proceed if the
zEDC function cannot be used for the data set being created, as follows:
- "zEDC Required" indicates that the system should fail the
allocation request if the zEDC function is not supported by the system
(regardless if the zEDC feature is installed), or if the minimum allocation
amount requirement is not met.
- "zEDC Preferred" indicates that the system should not fail
the allocation request, but rather create either a tailored compressed
data set if the zEDC function is not supported by the system (regardless
if the zEDC feature is installed), or a non-compressed extended format
data set if the minimum allocation amount requirement is not met.
For more information on zEDC compression, see z/OS MVS Programming: Callable Services for High-Level Languages.
The
form of compression the system is to use for newly created compressed
format data sets can be specified at either or both the data set level
and at the installation level. At the data set level, the storage
administrator can specify T (for tailored), G (for generic), ZR (for "zEDC
Required"), or ZP (for "zEDC Preferred") on the COMPACTION
option in the data class. When the data class is not specified at
the data set level (i.e. when the COMPACTION option is specified as Y),
it is based on the COMPRESS(TAILORED|GENERIC|ZEDC_R|ZEDC_P) parameter
found in the IGDSMSxx member of SYS1.PARMLIB. If the data class
specifies the compression form, this takes precedence over that which
is specified in SYS1.PARMLIB. COMPRESS(GENERIC) refers to generic
DBB-based compression. This is the default. COMPRESS(TAILORED) refers
to tailored compression, COMPRESS(ZEDC_R) refers to "zEDC Required" compression,
and COMPRESS(ZEDC_P) refers to "zEDC Preferred" compression.
When this member is activated using SET SMS=xx or IPL, new
compressed format data sets are created in the form specified. The
COMPRESS parameter in PARMLIB is ignored for VSAM KSDSs. For a complete
description of this parameter see z/OS DFSMSdfp Storage Administration.