Chapter 1. Release summary
2.6 Data set separation
The data set separation function allows you to specify that two, or more, data sets should not be allocated to DASD attached to the same physical control unit (PCU).
2.6.1 Allocation terminology
In the discussion of data set separation, allocation refers to the DADSM function which allocates space for data sets on DASD volumes. It is not the z/OS function which associates devices with data sets.
2.6.2 Requirement
System critical data such as system configuration data sets, JES2 checkpoint data sets and logging for subsystems such as DB2 or IMS, is often held in two or more copies to protect against failure. Having both data sets on the same physical control units introduces a single point of failure. To avoid this situation currently requires either manual data set placement or storage groups which are aligned to PCUs. These strategies are required to be maintained through the life of the data sets, not just for their initial allocation.
Application data may also benefit from being separated across PCUs to reduce recovery time in the event of a subsystem failure.
2.6.3 The answer
A data set separation profile has been introduced in z/OS V1R3 DFSMS. It is defined as part of he SMS base configuration and contains the names of data sets that require PCU separation.
The profile information can be in a sequential data set or a member of a PDS or PDSE.
The name of the sequential data set or member is specified in the base configuration, as shown in Figure 2-17.
Note: The DASD control unit must support the Read Configuration Data (RCD) command to be considered a separate PCU. All volumes behind control units that do not support the RCD command are considered to exist behind the same PCU.
You can use the DS QD,xxxx,1,RCD command to test which of your PCUs supports the RCD command.
Chapter 2. SMS enhancements 31
Figure 2-17 Altering the SMS base configuration
In this example, the profile data set is a member of a PDSE. The separation profile specified must exist and not contain invalid syntax when you validate your SMS configuration or validation will fail. In Figure 2-18, we show the output from an unsuccessful validation; in this case the specified separation data set was a PDS, but no member name was specified in the base configuration.
Figure 2-18 SMS configuration validation failure Consider the following commands:
SET SMS=xx SETSMS ACDS SETSMS SCDS
DGTDBSA1 SCDS BASE ALTER Page 1 of 2 Command ===> SCDS Name . : SYS1.SMS.SCDS SCDS Status : VALID To ALTER SCDS Base, Specify: Description ===> BASE SMS CONFIG FOR OE ===> Default Management Class . . (1 to 8 characters) Default Unit . . . (esoteric or generic device name) Default Device Geometry Bytes/Track . . . 56664 (1-999999) Tracks/Cylinder . . . 15 (1-999999)
DS Separation Profile (Data Set Name) ==> 'SYS1.SMS.SEP.PDSE(SEP1)'
********************************* Top of Data **************************** VALIDATION RESULTS VALIDATION RESULT: ERRORS DETECTED SCDS NAME: SYS1.SMS.SCDS ACS ROUTINE TYPE: * DATE OF VALIDATION: 2002/03/29 TIME OF VALIDATION: 14:04 IGD06031I DATA SET SEPARATION PROFILE SYS1.SMS.SEP.PDS COULD NOT BE ACCESSED. SMS RETURN CODE 00000008 GET REASON CODE 000C6000
When a new SMS configuration is activated as the result of one of these commands, the other systems in the SMSplex are notified and read the profile data set.
Refer to “Required maintenance” on page 34 for APARs that affect data set separation.
2.6.4 Contents of the data set separation profile
The separation profile contains one or more SEP statements. Each SEP statement defines data sets that are to be physically separated. Each new line within a SEP statement requires a continuation character on the previous line. The final character of a SEP statement must be a semi-colon ‘;’.
The action to be taken if separation is not possible is specified in the profile by use of the FAIL keyword. There are two valid values for this keyword, NONE and PCU; an example is shown in Figure 2-19.
Figure 2-19 Contents of a sample separation profile
The specification of FAIL(PCU) indicates that separation is required. The order of the data set names has no significance, the first data set to be allocated will be successful, if space is available. The allocation of the second and subsequent data sets will fail if space is not available on an another PCU.
The specification of FAIL(NONE) indicates that separation is preferred. Allocation will attempt to direct these data sets to separate PCUs if possible. If it is not possible to separate them they can be allocated on any PCU.
The complete syntax is described in z/OS V1R3.0 DFSMSdfp Storage Administration Reference, SC26-7402.
2.6.5 Allocation examples
Output for an allocation failure caused by failure of data set separation is shown in Figure 2-20. In this example SEP FAIL(PCU) was specified and the job was failed with a JCL error.
SEP FAIL(NONE) DSNS(MHLRES4.TEST1.SEP1, - MHLRES4.TEST1.SEP2, - MHLRES4.TEST1.SEP3); SEP FAIL(PCU) DSNS(MHLRES4.TEST1.SEP4, - MHLRES4.TEST1.SEP5);
Chapter 2. SMS enhancements 33
Figure 2-20 JOBLOG from allocation failure due to data set separation
JOBLOG messages for an allocation allowed to proceed even after a separation failure is shown in Figure 2-21. Separation was specified as SEP FAIL(NONE). This is the only notification received that the requested separation was not achieved. The job completed with RC=0 for the step that allocated this data set.
Figure 2-21 JOBLOG from allocation allowed to proceed SEP FAIL(NONE)
2.6.6 Restrictions for separation processing
The following restrictions apply for data set separation checking:
Data sets must be SMS managed. This may not be considered appropriate for the z/OS system data sets, such as sysplex couple and JES2 checkpoint data sets.
The use of wild cards is not supported, each data set name must be fully specified. For GDS data sets each absolute generation name must be coded. You cannot mask by GDG base name or specify relative generation numbers. You cannot use system symbols in a separation profile.
In an SMSplex running different levels of DFSMS, when a change is made to the data set separation profile, an SMS control data set must be activated (SCDS) or switched to (ACDS) on a system running z/OS V1R3 DFSMS or higher. Lower level systems do not support SMS data set separation and will not communicate the need to refresh the data set separation profile to other systems in the SMSplex.
IGD17206I VOLUME SELECTION HAS FAILED - THERE ARE NOT ENOUGH VOLUMES WITH SUFFICIENT SPACE FOR DATA SET MHLRES4.TEST1.SEP2 IGD17277I THERE ARE (10) CANDIDATE VOLUMES OF WHICH (1) ARE ENABLED OR QUIESCED IGD17290I THERE WERE 1 CANDIDATE STORAGE GROUPS OF WHICH THE FIRST 1 WERE ELIGIBLE THE CANDIDATE STORAGE GROUPS WERE:SGMHL01 IGD17279I 9 VOLUMES WERE REJECTED BECAUSE THE SMS VOLUME STATUS WAS DISABLED IGD17279I 5 VOLUMES WERE REJECTED BECAUSE THEY DID NOT MEET SEPARATION CRITERIA
IGD17271I ALLOCATION HAS BEEN ALLOWED TO PROCEED FOR DATA SET MHLRES4.TEST1.SEP2 ALTHOUGH VOLUME COUNT REQUIREMENTS COULD NOT BE MET IGD101I SMS ALLOCATED TO DDNAME (DD5 ) DSN (MHLRES4.TEST1.SEP5 )
STORCLAS (STANDARD) MGMTCLAS (MCDB22) DATACLAS (JMETEST) VOL SER NOS= MHLS2A
2.6.7 Usage considerations
Separation is enforced for both initial allocation and EOV processing. This means that a data set in your separation profile extending to a new volume can only extend to volumes on PCUs that currently do not hold an extent of this data set and any other data set in the same SEP FAIL(PCU) group as this data set. Striped data sets are processed in the same way, each stripe must be on a unique PCU. Here are some other factors you need to consider when coding separation profiles:
Each SMS allocation has to check the separation profile, and large lists could have a performance impact on the allocation extend processing.
Specifing a storage class that specifies guaranteed space for other than the first data set allocated has no impact. Data set separation overrides the specification of guaranteed space. This may result in allocation failures if SEP FAIL(PCU) is specified. If you specify storage class with guaranteed space and SEP FAIL(PCU) and you specify volumes in the same PCU, the allocation of the second data set will fail. If SEP FAIL(NONE) had been specified, the second allocation would have succeeded, but you would not obtain your requested separation.
A single separation profile is in effect for all systems in the SMSplex, it is not possible to run different profiles for different systems.
Separation requirements are only considered at allocation they are not checked when data sets are renamed.
Separation requirements are only considered for DASD data set allocations. Separation is not maintained when data is migrated or backed up using
DFSMShsm but is maintained during recall.
IBM Storage Systems ATS Center FLASH 10080 provides an unsupported tool XISOLATE that can be used to ensure that critical data sets are physically isolated. The tool can be obtained from:
http://www.ibm.com/support/techdocs/atsmastr.nsf/PubAllNum/Flash10080
2.6.8 Required maintenance
We recommend that you install the fix for the APARs listed here:
OW54037 is required to correct a problem in AOM processing of PCU information.
OW54121 is required to enable separation data set changes to be communicated between systems.
Chapter 2. SMS enhancements 35