MGMTCLAS (Management Class) is a JCL parameter that assigns a Storage Management Subsystem (SMS) management class to a dataset. Management classes control dataset migration, backup, and retention characteristics.
By specifying a MGMTCLAS, you allow the system to automatically manage a dataset's lifecycle based on predefined policies, eliminating the need to specify detailed management attributes directly in the JCL.
12//ddname DD DSNAME=dataset.name,DISP=(NEW,CATLG,DELETE), // MGMTCLAS=management-class-name
The MGMTCLAS parameter is specified on a DD statement, along with other dataset attributes. The management-class-name must be 1-8 characters and must be defined in the active SMS configuration.
123456//STEP010 EXEC PGM=IEFBR14 //SYSPRINT DD SYSOUT=* //NEWDATA DD DSN=USER.TEST.DATA, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(10,5)), // MGMTCLAS=STANDARD
In this example, the new dataset USER.TEST.DATA is assigned the STANDARD management class, which would control how the dataset is backed up, migrated, and eventually deleted by the system.
A management class defines various dataset management attributes that affect how the system handles dataset migration, backup, and retention. The attributes are defined by the storage administrator and can include:
The specific attributes and their values are defined by the storage administrator and may vary between installations. Consult your system documentation or storage administrator for available management classes and their attributes.
While management class names are installation-specific, there are some common naming conventions:
Management Class | Typical Usage | Common Attributes |
---|---|---|
STANDARD | General-purpose datasets |
|
NOBACKUP | Temporary or reproducible datasets |
|
CRITICAL | Mission-critical datasets |
|
GDGCLASS | Generation Data Groups |
|
ARCHIVE | Long-term archive datasets |
|
Note: The actual management class names and their attributes are defined by the storage administrator and will vary between installations. The examples above illustrate common patterns but may not match your specific environment.
Here are some common scenarios where specific management classes might be used:
Financial datasets with legal retention requirements need frequent backups and extended retention:
1234//FINDATA DD DSN=ACCT.FINANCIAL.DATA, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(100,50)), // MGMTCLAS=CRITICAL
The CRITICAL management class ensures multiple backups are maintained and the dataset is not migrated to slower storage, keeping it readily available for financial reporting.
Temporary datasets that are only needed during job processing:
1234//TEMPDATA DD DSN=USER.TEMP.PROCESS.DATA, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(5,2)), // MGMTCLAS=NOBACKUP
The NOBACKUP management class prevents system resources from being wasted on backing up temporary data, and ensures it's automatically cleaned up after a short period.
Data that must be retained for long periods but is rarely accessed:
1234//ARCHDATA DD DSN=HIST.ARCHIVE.DATA.Y2023, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(200,100)), // MGMTCLAS=ARCHIVE
The ARCHIVE management class quickly migrates the data to tape or other archival storage, but maintains its catalog entry and ensures it can be recalled if needed.
There are several ways a management class can be assigned to a dataset:
To check which management class is assigned to a dataset, you can use the ISMF (Interactive Storage Management Facility) panels or the LISTCAT command:
12345//LISTCAT EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * LISTCAT ENTRIES(dataset.name) ALL /*
The LISTCAT output will show the assigned management class in the MANAGEMENT-CLASS field.
Write JCL to create three datasets with different management classes based on these requirements:
Write JCL to list the management classes assigned to the following datasets in your system:
Review the LISTCAT output to determine if the management classes align with the dataset usage.
You cannot directly change the management class of an existing dataset through JCL. To change the management class, you must either use the IDCAMS ALTER command, the ISMF panels, or create a new dataset with the desired management class and copy the data to it.
If you specify a management class that is not defined in the active SMS configuration, the system will either reject the job with an error message or fall back to a default management class, depending on your installation's SMS configuration.
You can view available management classes through the ISMF panels in TSO/ISPF. Usually, this information is also documented in your installation's standards guide. Alternatively, you can consult with your storage administrator.
No, MGMTCLAS does not directly control where a dataset is initially allocated. Storage location is determined by the storage class (STORCLAS) and storage groups defined in SMS. MGMTCLAS only affects how the dataset is managed after allocation, such as migration and backup policies.
No, the MGMTCLAS parameter only applies to SMS-managed datasets. For non-SMS-managed datasets, you must manage migration and backup through other means, such as explicit HSM commands or custom procedures.
1. What aspects of dataset management does MGMTCLAS control?
2. Which of the following would take precedence for assigning a management class?
3. If you need to change the management class of an existing dataset, what must you do?
4. Which management class would be most appropriate for temporary datasets that don't need to be backed up?
5. Which command can be used to check the management class assigned to a dataset?
Learn about the storage class parameter for controlling dataset placement
Understand the data class parameter for dataset attributes
Master dataset space allocation techniques in JCL
Learn how to manage versions of datasets with GDGs
Explore parameters for the JOB statement in JCL
Understanding System Managed Storage concepts
Introduction to Virtual Storage Access Method
Managing datasets with the Access Method Services utility
Data Control Block parameters for dataset characteristics
Techniques for identifying and resolving JCL issues