Why is EAV needed • Problem: • Running out of z/OS addressable disk storage • Rapid data growth pushing 4-digit device number limit • Solution: • Defining larger volumes by increasing the number of cylinders • New track address format • 28 bit cylinder track address (CCCCcccH) • Space managed in multi-cylinder units • Cylinder-managed space (EAS) • Benefit: • Increase z/OS addressable disk storage by supporting additional data set types that are EAS eligible • z/OS V1R12 provides the third iteration of this support
Breaking the 65,520 cylinder limit Overview - What is an EAV • What is an Extended Address Volume (EAV)? • A volume with more than 65,520 cylinders • Size limited to 223 GB (262,668 Max cylinders) • Supported in z/OS V1R10 and higher z/OS V1R12 z/OS V1R10 z/OS V1R11
Overview - DS8000 Support • 3390 Model A • A device configured to have 1 to 268,434,453 cylinders • 223 GB • DS8000 Release 4 Licensed Internal Code • An EAV is configured as an 3390 Model A in the DS8000 Theoretically up to 268,434,453 Cylinders 3390-A “EAV” Size limited to 223 GB (262,668 Max cylinders) in z/OS V1R10 and higher 3390-9 3390-9 3390-9 3390-3 Theoretical Up to 225 TB 3 GB Max cyls: 3,339 9 GB Max cyls: 10,017 27 GB Max cyls: 32,760 54 GB Max cyls: 65,520
cylinder-managed space Cylinders Beyond first 65,520 Cylinders First 65,520 Cylinders track-managed space EAV Overview – EAV Key Design Points How the space is managed • Maintains 3390 track format • Track-managed space: the area on an EAV located within the first 65,520 cylinders • Space is allocated in track and cylinder units • Storage for “small” data sets • Cylinder-managed space: the area on an EAV located above the first 65,520 cylinders • Space is allocated in multicylinder units • A fixed unit of disk space that is larger than a cylinder. Currently on an EAV it is 21 cylinders • System may round space requests up • Storage for “large” data sets • Track-managed space comparable to same space on non-EAVs
Multi-unit cylinders • The 21 cylinder value for the MCU is derived from being the smallest unit that can map out the largest possible EAV volume and stay within the index architecture (with a block size of 8192 bytes), as follows: • Value that divides evenly into the 1GB storage segments of an IBM DS8000 • These 1GB segments are the allocation unit in the IBM DS8000 and are equivalent to 1113 cylinders. • These segments are allocated in multiples of 1113 cylinders starting at cylinder 65520
Extended addressing Space (EAS) Base addressing space EAV Overview – EAV Key Design Points Extended addressing space (EAS): the area on an EAV located above the first 65,536 cylinders. • 28-bit cylinder addressing (CCCCcccH) How the space is addressed • Base addressing space: the area on an EAV located within the first 65,536 cylinders. • 16-bit cylinder addressing (CCHH) • Comparable to same addressing space on a non-EAV Cylinders beyond first 65,536 cylinders New track address format needed to access tracks in EAS The first 65,536 cylinders
Format-8 Format-3 Extended addressing space Format-3 F3 F3 Format-9 Format-3 F3 … F3 Up to 10 Format-3 Base addressing space EAV Overview – Access to EAS eligible data sets on EAV New DSCB types provides a method of protecting existing programs from seeing an unexpected new track address format • EAS eligible data sets can reside anywhere on an EAV • Format 8/9 DSCBs EAS eligible data sets include VSAM, Sequential, Direct, and Partitioned in z/OS V1R12 Format-1 Format-3 Up to 10 Format-3
Format 4 DSCB • Number of cylinders on volume • Existing two-byte field DS4DSCYL in the F4 DSCB will contain the value of x’FFFE’ (65534). This Identifies the volume as an EAV. • DS4EAV defined as constant value of X’FFFE’ • New four-byte field DS4DCYL will contain the number of cylinders on the volume. • New allocation unit for cylinders above 65,520 • New two-byte field DS4LCYL will contain a code value of x’0010’ to indicate that the cylinder-managed space after the first 65,520 cylinders must be allocated in units that are larger than one cylinder. • This value represents 65520 cylinders divided by 4095. For a non-EAV this will be zero. • New field DS4MCU (“minimum allocation unit”) will contain the number of cylinders that each extent in the cylinder-managed area must be a multiple of. • For an EAV this will be 21. For a non-EAV this will be zero. It is valid only when the value in DS4DSCYL is DS4EAV.
Format 8 and 9 DSCB • Format 8 DSCB similar to Format 1 DSCB except • Identifier F8 instead of F1 • Points to format-9 DSCB instead of a format-3 DSCB • Cylinder numbers in the extent descriptions can include large cylinder numbers • Format 9 DSCB • New as of z/OS V1R10 • Points to one or more format-3 DSCB
Format 8 DSCB • Identical to F1 DSCB with following exceptions • The format identifier (DS1FMTID) will be x’F8’ instead of x’F1’ . New symbols defined: • DS1IDC constant value of X’F1’ in DS1FMTID • DS8IDC constant value of X’F8’ in DS1FMTID • Track addresses in the extent descriptors starting in DS1EXT1 will use new track address format (that is, may contain 28-bit cylinder numbers) • The ‘next DSCB’ address (DS1PTRDS) will always point to a F9 DSCB (new type of DSCB) instead of a possible first F3 DSCB.
Format 9 DSCB • F9 DSCB will exist only for EAS eligible data sets (VSAM in first release) • Will contain the following • The format identifier will be x’F9’ • A subtype field • In the first EAV release, the subtype will be 1. • In future releases, additional subtypes may be added. • Track addresses which point directly to up to ten F3 DSCBs • All the format 3 DSCBs can be read with one channel program. • A 20-byte field DS9ATRV1 that IBM is reserving for vendors. IBM will not specify or monitor its content. • A ‘next DSCB’ address will point to a possible F3 DSCB. The F3 DSCBs will continue to be chained. • In future releases, additional F9 DSCBs may be chained between the subtype 1 and any F3 DSCBs
Overview - access to extended attribute DSCBs • Code EADSCB=OK to access extended attribute data set control blocks (DSCBs) • EADSCB=OK indicates that program understands 28-bit cylinder numbers and format 8 and 9 DSCBs. • OBTAIN (CAMLST), CVAFDIR, CVAFFILT, CVAFSEQ, DCBE (open for EXCP processing, open VTOC), CVAFDSM • Not specifying EADSCB=OK will cause these services to fail • Keyword on 1.10 programs ignored on pre 1.10 systems & on volumes not supporting extended attribute DSCBs • Recommendation: code keyword on all invocations EADSCB=OK keyword must be specified to access EAV VTOC records! Not all applications can access EAS eligible data sets! Use the tracking facility to assist in finding programs
Migration Assistance Tracker • The EAV migration assistance tracker can help with: • Finding programs that you might need to change if you want to support extended address volumes (EAVs) • The EAV migration assistance tracker is an extension of the console ID tracking facility • Functions: • Identify select systems services by job and program name • Identify possible instances of improper use of returned information in programs, like parsing 28-bit cylinder numbers in output as 16-bit cylindernumbers • Identify instances of programs that will either fail or run with an informational message if they run on an EAV
CNIDTRxx Parmlib member set cnidtr=7t IEE536I CNIDTR VALUE 7T NOW IN EFFECT
EAS Eligible data set sets in z/OS • EAS Eligible: A data set on an EAV that is eligible to have extents in the extended addressing space and described by extended attribute DSCBs (format 8/9) • Can reside in track or cylinder-managed space • SMS-managed or non-SMS managed • Any data set type can reside in track-managed space • Data set types supported • VSAM data types (KSDS, RRDS, ESDS and linear) • This covers DB2, IMS, CICS, zFS and NFS • CA sizes: 1, 3, 5, 7, 9 and 15 tracks • Sequential (Extended Format) • Sequential (Basic and Large Format) • Direct (BDAM) • Partitioned (PDS, PDSE) • Catalog (VVDS and BCS) V1R10 VSAM V1R11 VSAM EF SEQ z/OS V1R12 ALL
Non-EAS-eligible data set list • A data set that may exist on an EAV but is not eligible to have extents (through create or extend) in the extended addressing space or have extended attribute DSCBs (format 8/9) • The following data sets are not EAS-eligible: • VSAM data sets with incompatible CA sizes • VTOC (continues to be restricted to within first 64K-1 tracks) • VTOC index • Page data sets • VSAM data sets with imbed or keyrange attributes • HFS file system • XRC Control, Master or Cluster non-VSAM data sets • State data set EAS eligible in z/OS V1R12 • Journal data set EAS eligible in z/OS V1R11 and V1R12 • Certain system data sets such as SYS1.NUCLEUS
EATTR data set attribute EATTR is a new data set attribute in z/OS R11 to specify whether extended attributes can be created for a data set • NO - No extended attributes. • The data set cannot have extended attributes (Format 8 and 9 DSCBs) or optionally reside in EAS. • This is the default behavior for non-VSAM data sets in z/OS V1R11 and higher. • In z/OS V1R10 in the absence of EATTR this is equivalent to what the system uses for non-VSAM. • OPT - Extended attributes are optional. • The data set can have extended attributes and can optionally reside in EAS. • This is the default behavior for VSAM data sets in z/OS V1R11 and higher. • In z/OS V1R10 in the absence of EATTR this is equivalent to what the system uses for VSAM. • Used to override system-determined EAS eligibility Specifiable in AMS DEFINE CLUSTER and ALLOCATE, JCL, dynamic allocation, data class and ISPF Recorded in Format 1/8 DSCB for all data set types and volume types Recorded in VVDS for VSAM cluster name Listed by IEHLIST, ISPF, ISMF, LISTCAT, Catalog Search Interface (CSI), DCOLLECT z/OS V1R11
EATTR data set attribute in z/OS V1R11 • Miscellaneous • Volume selection based on EATTR values • SMS volume selection • HSM non-SMS volume selection • EATTR will be determined as follows • In the JCL interface by merging EATTR from the JCL, LIKE= and data class in that order z/OS V1R11
EATTR and format 9 data set attributes – IEHLIST CONTENTS OF VTOC ON VOL 1P9802 <THIS IS AN SMS MANAGED VOLUME> FORMAT 4 DSCB NO AVAIL/MAX DSCB /MAX DIRECT NO AVAIL NEXT ALT FORMAT 6 LAST FMT 1 VTOC EXTENT THIS DSCB VI DSCBS PER TRK BLK PER TRK ALT TRK TRK(C-H) (C-H-R) DSCB(C-H-R)/LOW(C-H) HIGH(C-H) (C-H-R) 81 65499 50 45 0 0 0 1279 14 50 0 1 1279 14 0 1 1 NUMBER OF MULTICYLINDER UNITS CYLINDERS FIRST CYL ADDR SPACE 262668 65520 21 ---------------DATA SET NAME---------------- SER NO SEQNO DATE.CRE DATE.EXP DATE.REF EXT DSORG RECFM OPTCD BLKSIZE BRS8AM02.HANDLIN.V1P9802.NVSAM.FILL.CB1 1P9802 1 2008.176 00.000 00.000 1 PS FB 00 6320 SMS.IND LRECL KEYLEN INITIAL ALLOC 2ND ALLOC EXTEND LAST BLK(T-R-L) DIR.REM F2 OR F3(C-H-R) DSCB(C-H-R) S 80 TRKS 1 0 0 58786 0 2 29 EXTENTS NO LOW(C-H) HIGH(C-H) 0 50901 9 50901 14 ----ON THE ABOVE DATA SET,THERE ARE 6 EMPTY TRACK(S) ---------------DATA SET NAME---------------- SER NO SEQNO DATE.CRE DATE.EXP DATE.REF EXT DSORG RECFM OPTCD BLKSIZE BRS8AM02.HANDLIN.V1P9802.VSAM.FILL.D1.DATA 1P9802 1 2008.176 00.000 00.000 1 VS U 80 4096 SMS.IND LRECL KEYLEN INITIAL ALLOC 2ND ALLOC EXTEND LAST BLK(T-R-L) DIR.REM PTR TO F3(C-H-R) DSCB(C-H-R S 0 CYLS 0 2 3 13 VENDOR EATTR JOB STEP CREATE TIME CODE DATA OPT JOB1GALA STEP0001 01:28:58.673275 1 X'11223344' 2 X'556677' 255 X'88' EXTENTS NO LOW(C-H) HIGH(C-H) 0 193704 0 193724 14 ----UNABLE TO CALCULATE EMPTY SPACE. VPSM A = NUMBER OF TRKS IN ADDITION TO FULL CYLS IN THE EXTENT TRK FULL TRK FULL TRK FULL TRK FULL ADDR CYLS A ADDR CYLS A ADDR CYLS A ADDR CYLS A 3784725 42 0 3785670 63 0 3786930 21 0 3787560 42 0 3788505 63 0 3789765 21 0 3790395 42 0 3791340 63 0 THERE ARE 52290 EMPTY CYLINDERS PLUS 4590 EMPTY TRACKS ON THIS VOLUME THERE ARE 12852 EMPTY CYLINDERS PLUS 4590 EMPTY TRACKS FROM THE TRACK-MANAGED SPACE THERE ARE 957221 BLANK DSCBS IN THE VTOC ON THIS VOLUME New fields and extent descriptors for data and free space adjusted to support larger cylinder numbers
EATTR in LISTCAT LISTCAT ENT(CFDUPLEX.AA.CARDHOLD) ALL CLUSTER ------- CFDUPLEX.AA.CARDHOLD IN-CAT --- W93UCAT.TVS HISTORY DATASET-OWNER-----(NULL) CREATION--------2009.058 RELEASE----------------2 EXPIRATION------0000.000 SMSDATA STORAGECLASS ---MLCLAS01 MANAGEMENTCLASS---(NULL) DATACLASS ------EATTROPT LBACKUP ---0000.000.0000 EATTR--------------(OPT) BWO STATUS------00000000 BWO TIMESTAMP---00000 00:00:00.0 BWO-------------------NO
BCP support for EAV in z/OS V1R11 z/OS V1R11 • Support for data sets that reside in EAS • SMF, TSO/E, ISPF, FTP support • Language Environment support for data sets with extended attributes, including those in EAS on an EAV, for C/C++ programs • RACF discrete profile support for non-VSAM data sets in EAS • ADDSD and ALTDSD commands have been updated to support datasets in the EAS • The RACF database is not supported if allocated in the EAS • RACF utilities will not support allocation of DB datasets in the EAS • EATTR=NO (default) should be used on allocations for these data sets IRRUT200 SYSUT1 DD IRRMIN00 SYSRACF DD IRRUT400 OUTDD DD • SVCDUMP, SYSMDUMP, SNAP, ABDUMP and IPCS support
Catalog/IDCAMS - BCS in z/OS V1R12 • BCS (basic catalog structure) data sets EAS eligible • AMS will be changed to support EATTR as a keyword on the DEFINE UCAT as well as on DEFINE UCAT MODEL. • This applies to both ICFCATALOG and VOLCATALOG objects. • EATTR(NO) – Can not have extended attribute DSCBs or optionally reside in EAS • EATTR(OPT) – Can have extended attribute DSCBs and optionally reside in EAS • Both recorded in the VVDS for the catalog objects and in the DSCBs that get created in the VTOC • Catalog object restricted to track-managed space when EATTR is not specified. This is the action taken by the system today for catalog defines. • No EATTR option in pre z/OS V1R12 systems • EXPORT/IMPORT preserves EATTR value across systems
Catalog/IDCAMS - VVDS in z/OS V1R12 • VVDS (VSAM volume data sets) data sets EAS eligible • AMS will be changed to support EATTR as a keyword on the DEFINE CLUSTER where the object is a VVDS data set. • EATTR(NO) – Can not have extended attribute DSCBs or optionally reside in EAS • EATTR(OPT) – Can have extended attribute DSCBs and optionally reside in EAS • Both recorded in the DSCBs that get created in the VTOC • VVDS objects restricted to track-managed space when EATTR is not specified. This is the action taken when VVDS is allocated by the system. • No EATTR option in pre z/OS V1R12 systems • Data Class/Model does not apply to a DEFINE of an VVDS • Only way is with the EATTR keyword
DFSMShsm support in z/OS V1R12 • The DFSMShsm owned backup and migration (ML1 / ML2) volumes can be EAV space • Manage use with new option • SETSYS USECYLINDERMANAGEDSPACE(Y|N) • DFSMShsm data sets that can be allocated in EAS • Journal (basic or large format sequential data sets) • Control data sets (CDS) and Journal backup data sets • Logging and PDA data sets • DFSMShsm will support the data set level attribute EATTR for all EAV eligible data sets and process SMS and non-SMS recalls/recovers/arecovers accordingly.
DFSORT V1R12 changes • DFSORT data sets that can be allocated in EAS • SORTIN, SORTOUT, OUTFIL • Maximum size of large format sequential supported • SORTWK • If basic format sequential • Limited to 65534 tracks • If large format sequential • Limited to 1,048,574 tracks (blocks) • Larger can be allocated but excess will not be used • Less in a resource-constrained environment • Provided in DFSORT V1R12
Other changes • Other changes to support the additional data set types that are now EAS eligible. • DFSMSdss • EREP • IBM utilities like IEBCOPY • LIKE= processing for PDS • Directory blocks calculation • SMS support for catalogs in EAS • Volume selection • When EATTR=OPT prefer EAV volumes when space >= BPV • Default EATTR processing • Catalogs – equivalent to EATTR=NO processing • Different from VSAM even though catalogs are VSAM files
Interactions & Dependencies • Hardware Dependencies • None other than the 3390 Model A that has been supported since z/OS Release 10 • Software Dependencies • Apply PTFs on pre-Release 12 systems that share DASD with Release 12. Described on later Coexistence Considerations pages. • Exploiters • Planned exploiters include DB2 and IMS • User and vendor application programs. Ask your vendors.
ISPF EAV Data Set Support • Option A (Allocate New Data Set) of the Data Set Utility (ISPF option 3.2) is enhanced with a new “Extended Attributes” field. • If OPT is specified in this field the data set can have extended attributes and reside in EAS.
ISPF EAV Data Set Support • Extended Attribute - Any of the following: NO - data set cannot have extended attributes or reside in EAS. This is the default for non-VSAM data sets. OPT - data set can have extended attributes and reside in EAS. This is the default for VSAM data sets. blank - use default based on data type.
ISPF EAV Data Set Support. . . • The “Data Set Information” panels available from the Data Set Utility (ISPF option 3.2) and the Data Set List Utility (ISPF option 3.4) line commands I and S are enhanced to display the “Extended Attributes” setting for a data set.
ISPF EAV Data Set Support • ISPF services are enhanced to return the “Extended Attributes” setting for a dataset: • DSINFO service • Returned in variable ZDSEATR • LMDLIST service • Returned in variable ZDLEATR
Configure an EAV – Automatic VTOC and index rebuild in z/OS V1R11 • Dynamic Volume Expansion enhancements • Automatic VTOC and VTOC index rebuild • When a volume increase in size is detected by the system • Triggered by state change interrupts (SCIs) • Controlled with new DEVSUPxx PARMLIB option • ENABLE(REFVTOC) • DISABLE(REFVTOC) – default • The refresh of the index occurs under protection of an exclusive SYSTEMS ENQ macro for major name SYSZDMO, minor name DMO.REFVTOC.VOLSER.volser. z/OS V1R11
Automatic VTOC and VTOC index rebuild • REFVTOC=ENABLE - Enables the automatic REFVTOC function of the device manager that when enabled, and a volume expansion is detected, the device manager causes the volume VTOC to be rebuilt • This allows the newly added space on the volume to be used by the system • REFVTOC=DISABLE - This is the default value. It disables the automatic REFVTOC function of the device manager • With the REFVTOC function disabled, when a volume expansion is detected: (Use R10 method) • The following message is issued: IEA019I DDDD,VVVVVV,VOLUME CAPACITY CHANGE,OLD=XXXXXXXX NEW=YYYYYYYY