This enhancement allows storage administrations to exploit zEnterprise® data compression (zEDC) for non-VSAM compressed format data sets. Unlike previous compression types, 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.
zEDC compression can be requested in the same way that existing types of compression (generic and tailored compression) are requested. The COMPACTION value in data class is used to allocate a data set in compressed format. The type of compression can be specified at the data set level, system level, or both. At the data set level, it can be specified using the data class via the new COMPACTION options of ZR ("zEDC Required") and ZP ("zEDC Preferred"). It can also be specified at the system level via the new options of ZEDC_R ("zEDC Required") and ZEDC_P ("zEDC Preferred") for the COMPRESS parameter in the IGDSMSxx member of SYS1.PARMLIB, when the data class COMPACTION value is specified as Y.
To allocate a zEDC compressed format data set, the allocation amount must also meet the existing minimum space requirement for compressed format data sets. The minimum primary space amount must be 5 MB if secondary amount is specified, or 8 MB if a secondary amount is not specified. If the minimum space requirement is not met, the allocation request may result in a non-compressed extended format data set, depending on whether zEDC is preferred or required. Whereas generic and tailored compressed data sets can be defined as extended format version 1 or version 2 data sets, zEDC compressed data sets will be defined as extended format version 2 data sets, regardless of the user's specification. See Processing Extended-Format Sequential Data Sets in z/OS DFSMS Using Data Sets for more information.
SMS allocation processing determines if a data set can be allocated as compressed format. The type of compression to be used for the data set is not determined until the first OPEN for output of the data set. The following two tables summarize the system behavior during SMS allocation processing for a new data set based on system levels and the user's allocation request, the first table on a z/OS V2R1 system, and the second table on a z/OS V1R12 or V1R13 system.
z/OS Level | z/OS V2R1 | |||
---|---|---|---|---|
Processor Level | Supports zEDC compression, as per System requirements | Does not support zEDC compression, as per System requirements | ||
Meets minimum compression space requirements? (5MB primary if no secondary) | Meets space requirement | Does not meet space requirement | Meets space requirement | Does not meet space requirement |
"zEDC Required" request | Allocation successful, create as compressed format (extended format v2) | Allocation request fails with IGD17168I | Allocation request fails with IGD17168I | Allocation request fails with IGD17168I |
"zEDC Preferred" request | Allocation successful, create as compressed format (extended format v2) | Allocation successful, create as non-compressed extended format | Allocation successful, create as compressed format (extended format v2) | Allocation successful, create as non-compressed extended format |
z/OS Level | z/OS V1R12 or V1R13 | |||
---|---|---|---|---|
Meets minimum compression space requirements? (5MB primary if no secondary) | Meets space requirement | Does not meet space requirement | ||
Data Class COMPACTION option specified as other than N¹ | Allocation successful, create as compressed format | Allocation successful, create as non-compressed extended format | ||
Data Class COMPACTION option specified as N, or not specified | Allocation successful, create as non-compressed extended format | Allocation successful, create as non-compressed extended format | ||
¹ On z/OS V1R12 and V1R13, SMS allocation does not differentiate between the different COMPACTION options. |
The first OPEN for output of the data set determines the compression type for the data set based on the data class and PARMLIB specifications, as shown in Specifying zEDC compression at the system level and Specifying zEDC compression at the data set level. For a zEDC request, it must also determine the level of the system. When running on a multi-system sysplex, it is possible for the data set to be allocated on one system but opened on a different system.
When running in a JES2 environment, this function does not affect how JES2 selects the system on which to run the job.
When running in a JES3 environment, SMS is invoked to identify a list of one or more target systems where the job should be scheduled. The following table identifies how SMS would select systems when the data set is to be allocated with zEDC compression. For new data sets, SMS will look at the requested compression type (required or preferred). For existing data sets, SMS will look at the compression type found in the dictionary token stored in the data set's extended format cell, located in the catalog.
Priority | System Description Based on zEDC Capability |
---|---|
1 | System capable of zEDC compression (as per System requirements). Devices are available on the system. |
2 | System capable of zEDC compression (as per System requirements). No devices currently available on the system, but devices were available during this IPL. |
3 | System capable of zEDC compression (as per System requirements). No devices currently available on the system, and no devices were available during this IPL. |
4 | System not capable of zEDC compression (as per System requirements). |
Since the systems can be at different z/OS and processor levels, on the first OPEN for output of the data set, OPEN processing must once again determine the level of system before determining the type of compression to use for the data set. The following tables summarize the system behavior during OPEN processing for a new data set based on system levels and the zEDC compression request, the first table on a z/OS V2R1 system, and the second table on a downlevel z/OS V1R12 or V1R13 system.
z/OS Level | z/OS V2R1 | |||
---|---|---|---|---|
Processor Level | Supports zEDC compression, as per System requirements | Does not support zEDC compression, as per System requirements | ||
DS1COMPR setting¹ | DS1COMPR=on | DS1COMPR=off | DS1COMPR=on | DS1COMPR=off |
"zEDC Required" request | Create as zEDC compressed format (extended format v2)⁴ | N/A² | Create as zEDC compressed format (extended format v2)³ ⁴ | N/A² |
"zEDC Preferred" request | Create as zEDC compressed format (extended format v2)⁴ | Create as non-compressed extended format | Create as tailored compressed format (extended format v2)⁴ | Create as non-compressed extended format |
|
z/OS Level | z/OS V1R12 or V1R13 | |||
---|---|---|---|---|
DS1COMPR setting¹ | DS1COMPR=on | DS1COMPR=off | ||
"zEDC Required" request⁴ | Create as zEDC compressed format (extended format v2)³ | N/A² | ||
"zEDC Preferred" request⁴ | Create as tailored compressed format | Create as non-compressed extended format | ||
|
For more information on zEDC compression, see z/OS MVS Programming: Callable Services for High-Level Languages.
The following table lists the types of tasks and associated procedures that you must complete to fully use these enhancements.
Tasks | Procedure that you must perform: |
---|---|
Administering |