DFSMS, z/OS System Managed Storage - Management Class

Management classes are used to determine backup and migration requirements. This is a definite area where you can either install a simple system managed by your users, or you can make your life difficult and do it all yourself. There are a lot of Storage Managers out there who are uncomfortable with the concept of letting the users decide what class of service a file gets. However, if you decide not to let your users pick their own management classes, you end up with large filtlists, and complicated logic in the Management Class ACS routine. If you get it wrong, and files are deleted too early, or backups not kept long enough, its YOUR fault. If you supply your users with good documentation and procedures, and they allocate a file with the wrong class, its their fault.

   EADM Advert

Accelerate DB2 Write with zHyperWrite and "EADM™ by Improving DB2 Logs Volumes Response Time:

Here's an example of how it could be done.

A file will get the STANDARD management class by default. Users can modify an existing data set's Management Class by using the IDCAM's 'ALTER' command, on the line of the data set; for example, under ISPF option 3.4 issue:

ALTER (/) MGMTCLAS(newname) where (/) = datasetname

    GFS Advert

For new datasets, a management class can be specified, with either the JCL keyword MGMTCLAS=, or by filling in the management class field in ISPF option 3.2
Of course, it cannot be that simple. You will need a few special management classes for special files.
M A N A G E M E N T C L A S S (cont.)

The STANML2 class is exactly the same as the STANBK class above, except that when the data is migrated, it goes straight to ML2. You would invoke this in your ACS routines with code that looks a bit like


Generation Data Groups are generally created, then never updated again, so they need special processing. For instance, older files are usually migrated earlier than a normal file would be. You invoke the GDG class with code like


The NOMGMT class is for files that you never want archived or space managed. You probably want to restrict access to this class, and so its probably best managed explicitly from a filtlist. Typically, you would use this for Started Task files.

The management class has a freespace release parameter to cut overallocated files down to size.

Finally, How do the 'backup' fields work? Firstly, these don't apply to all mainframe backup products. Native DFDSS and FDRABR work on a volume basis, and management classes are ignored. If you use DFHSM as your backup product, it will use these classes to decide how long backups are kept.

There are two types of backup, the most recent, or active backup, and older, or inactive backups. A file can have two statuses, online or deleted. If a file is online, the most recent, or active backup is always kept. There's no parameter to control this, that's just the way it is. Retention is controlled by parameters as shown in the table below

File Online File Deleted
Active Backup Always Kept "# backups DS deleted"can be set to '0', which means no backups are kept if the file is deleted
Inactive Backup '# backups DS exists' controls how many backups are retained, 'Retain Days Extra Backup' controls how long inactive backups are kept for '# backups DS deleted' controls how many backups are retained, 'Retain Days Extra Backup' controls how long inactive backups are kept for

back to top