Types of Compression
- 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
orzEDC 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.