Northwest Regional Data Center

The Ultimate Solution to Simplify Your Data Center

Batch Processing, Systems Managed Storage and Tape Processing

If you have any questions about the content of this page, please contact Requests for clarification

Batch Standards

SMS

TAPES

 

 

Job Naming Standards
Please start all job names with the appropriate two-character institution code for your organization; for example, NW for NWRDC. If you do not know your two-character institution code, contact (850) 245-3500 or ACF2 Request. In most cases it is the same as the two first letters of your ACF2 logonID.

Start development jobs (tests, compiles etc.) with the full five or six character logon id of the submitter/retriever of the job. Because this leaves only three characters for uniqueness, you must use the programmer name field (20 characters) to differentiate between like-named jobs.

MSGCLASS, MSGLEVEL and CLASS Parameters

Example JCL syntax:
//jobname JOB accounting_data,
// MSGCLASS=output_class,
// MSGLEVEL=(statements,messages),
// CLASS=job_class

MSGCLASS Parameter
The MSGCLASS parameter assigns the job log for a job to a particular sysout output class. The job log contains the JOB statement, the JCL for the job, JCL processing messages, in-stream and cataloged procedure statements, and JES2 messages and MVS operator messages

The default value supplied for the job log if MSGCLASS is omitted is A.
The default value for the * in //ddn DD SYSOUT=* is the MSGCLASS value set in the MSGCLASS parm.

Valid Message (or Output) Classes at the NWRDC
The following output classes have specific meaning:

A,J Create output on the job spool regardless of run’s success
B,K Create output for PUNCH
H Hold the output regardless of run’s success
J Create output on the job spool regardless of run’s success
X Do not create output on the job spool, regardless of run’s success, "no output"
Y Print the output only if the run was unsuccessful

MSGLEVEL Parameter

The MSGLEVEL parameter is used to control the listing of the job log for a job.

The following job log elements can be controlled:

  • The JOB statement.
  • All JCL in the job's input stream including all JCL statements and JES2 control (JECL) statements
  • In-stream and cataloged procedure statements for a procedure invoked by a job step
  • JCL substitution and processing messages
  • JES and MVS operator messages concerning the job's processing, including those for allocations of devices/volumes, start/stop of job steps and the job, and the disposition of the data sets used

Syntax: MSGLEVEL=({statements}{,messages})

The parentheses can be left off if only the first subparameter is used.

Values for 'statements' in the MSGLEVEL keyword can be one of these:

0 only JOB statement prints
1 all JCL and JES statements and messages print
2 only JCL & JES statements print

Values for 'messages' in the MSGLEVEL keyword can be one of these:

0 only JCL messages print. If the job ABENDs, then JES mssages print also.
1 JCL and JES messages print

Examples:

// MSGLEVEL=(0,0) Print minimal job log:
// MSGLEVEL=(1,1) Print everything in job log: (this is the default value)

CLASS Parameter

The CLASS parameter is used to assign your job to a job processing class. The class you should request depends on the characteristics of the job and NWRDC's rules for assigning classes.

Job Classification Determination and Restrictions

JOB classes 1 through 7 are system generated at the NWRDC. Customers of the NWRDC should not use these classes. If one of these classes is specified in the CLASS parameter, NWRDC will resubmit the job under a generated JOB class.

The algorithm for system-generated JOB classes (i.e., 'CLASS =' not specified on the JOB card) has been enhanced at the NWRDC to increase system performance. Three resources are the controlling factors in determining the class to be system assigned:

1. REGION size
2. TAPE Drive use count
3. CPU time specified for JOB execution

REGION size is controlled by the 'REGION=' parameter on the JOB or EXEC statement or by the system default of 4096K bytes.

TAPE DRIVE quantity can be reduced by the use of the 'UNIT=AFF=' parameter or by using disk space instead of magnetic tape where applicable.

The quantity of CPU time is specified with the 'TIME=' parameter on the JOB card as defined in the JCL manual. The system default for time is 30 minutes (A VERY LARGE VALUE).

The user specified JOB classes provided by the NWRDC are:

CLASS Value Meaning
V Highest priority (see Job Pricing Differential table) - can require any combination of resources
E High priority (see Job Pricing Differential table) - can require any combination of resources
C Low priority - typically overnight  (see Job Pricing Differential table) - can require any combination of resources
G Lowest priority - typically weekend (see Job Pricing Differential table) - can require any combination of resources
D for DEVELOPMENT and can use up to four tape drives and up to four megabyte of region. CLASS D is also generated by the system under the same conditions.
P  
F is for Cross Domain FILE TRANSFER jobs.

 Warning: class codes should not be used to schedule jobs.

Job Class Pricing Differential

Attached to each explicit priority assignment will be a pricing differential as follows:

CLASS PRIORITY CHARGE COEFFICIENT
G 0 0.25 X Generated Charge = Total Charge
C 1 0.60 X Generated Charge = Total Charge
E 12 3.00 X Generated Charge = Total Charge
V 13 4.00 X Generated Charge = Total Charge

Class G/Priority "0" Jobs:
Executes on weekends, after 2100 on Friday, and
Cancelled from the system if not completed by 0220 Monday morning.

Class C/Priority "1" Jobs:

Executes only between 2100 and 02:20 Monday, between 2100 and 0500 Tuesday through Friday (and on weekends)
Jobs not started by 0500(0220 Monday) will be held until the following 2100.
Jobs still in execution at 0500 Tuesday, Wednesday, Thursday or Friday are subject to being cancelled.
Jobs still in execution at 0220 Monday will be cancelled due to system IPL.

Calculated Job Priorities
Calculated job execution priorities will be based upon the following table:

CALCULATED PRIORITY CPU SECONDS TIME KEYWORD
11 1 TIME=(,1)
10 2 TIME=(,2)
9 5 TIME=(,5)
8 10 TIME=(,10)
7 20 TIME=(,20)
6 60 TIME=1
5 300 TIME=5
4 600 TIME=10
3 >600 >TIME=10

If the 'CLASS=' parameter is omitted from the JOB card, a class will be generated for the job. The generated classes are 1 through 7, L, A, and D. CLASS 1 jobs, for example, are generated under the following conditions: 0 tape usage, less than one megabyte region size and no more than ten seconds of CPU time. The table that follows describes the requirements for all generated classes.

CLASS GENERATION TABLE

Generated
Class
Time in
Seconds
Max 3480 Tape Drives
Allocated
1 1 - 10 0
2 11 - 30 0
3 31 - 60 0
4 61 - 1800 0
5 1 - 10 1
6 11 - 30 1
7 31 - 300 1
D ANY 4
L ANY 5
A RESOURCE UNAVAILABLE JOB WILL NEVER EXECUTE, CHECK JCL

NWHOLD: A Technique for Holding Jobs

Use of CONTROL-M is recommended for scheduling jobs to start after a certain time

Hold Data Set Names
NWR maintains allocations for thirty-one datasets: twenty-four hourly datasets and seven day-of-the-week datasets. The dataset names are as follows:

NWR.HOLD.UNTIL8AM NWR.HOLD.UNTIL8PM NWR.HOLD.UNTILSUN
NWR.HOLD.UNTIL9AM NWR.HOLD.UNTIL9PM NWR.HOLD.UNTILMON
NWR.HOLD.UNTIL10A NWR.HOLD.UNTIL10P NWR.HOLD.UNTILTUE
NWR.HOLD.UNTIL11A NWR.HOLD.UNTIL11P NWR.HOLD.UNTILWED
NWR.HOLD.UNTIL0PM NWR.HOLD.UNTIL0AM NWR.HOLD.UNTILTHU
NWR.HOLD.UNTIL1PM NWR.HOLD.UNTIL1AM NWR.HOLD.UNTILFRI
NWR.HOLD.UNTIL2PM NWR.HOLD.UNTIL2AM NWR.HOLD.UNTILSAT
NWR.HOLD.UNTIL3PM NWR.HOLD.UNTIL3AM  
NWR.HOLD.UNTIL4PM NWR.HOLD.UNTIL4AM  
NWR.HOLD.UNTIL5PM NWR.HOLD.UNTIL5AM  
NWR.HOLD.UNTIL6PM NWR.HOLD.UNTIL6AM  
NWR.HOLD.UNTIL7PM NWR.HOLD.UNTIL7AM  

Be sure to use DISP=SHR for all NWR.HOLD.xxxxxx data sets.

You may use one of the “time” data sets and/or one of the “day” data sets to force a delay in the start of your job. For example, if you wanted a job to run sometime after 8 PM on Tuesday, you would add the following JCL to the job anywhere in a job step.

//H1 DD DISP=SHR,DSN=NWR.HOLD.UNTIL8PM
//H2 DD DISP=SHR,DSN=NWR.HOLD.UNTILTUE

Special Note on “DAY HOLD” data sets:

The “day” in question does not start until 8 AM.

So to hold a job until 7 AM on a Friday, the following JCL would be required:

//H1 DD DISP=SHR,DSN=NWR.HOLD.UNTIL7AM
//H2 DD DISP=SHR,DSN=NWR.HOLD.UNTILTHU


System-Managed Storage

All Customer data sets and volumes are SMS managed

Storage Class
Storage class is an optional parameter. For most NWRDC institutions, if not entered, the storage class is assigned automatically by SMS ACS routines.

Storage Groups
Institutions that require multiple disk volumes will be assigned unique SGIIXXX names that related to a specific group of volumes, where II is an institution code and XXX will be chosen by the customer. XXX is usually STD or DB2 but can be anything the institution wants.

Note: DASD volumes can be viewed by Storage Group by using the Quick-Ref product.

Management Class

Management class is an optional parameter. If not supplied, non-DB2 data will default to the NWRDC default management class of MCDEFALT which will expire a dataset 7 years after last usage. The current default for disk data sets is permanent retention. MCDEFALT is an attempt to control the lifespan of data sets that are migrated by HSM, then not used again. Data sets that are historical in nature and must be retained beyond 7 years after last usage should be allocated or subsequently altered to management class MC4EVER. If not supplied, DB2 data will default to the management class of MCNOBAK, which differs from MCDEFALT as follows: data sets are permanent, they will never expire; no autobackup. For DB2, backup and recovery is performed via DB2 services. Customers are responsible for image copy (full is recommended) and recovery procedures for their tablespaces to correspond to the 60 day recovery window.

Management Classes

For migration: eligible for auto-migration to level 1(disk) after 10 days non-usage; eligible for auto-migration to level 2(tape) after 14 days non-usage; both auto-migration and migration by command are supported.

MCDEFALT default mgmt class; assigned if none explicitly selected.
MCCMDMIG migration by command only, no automigration.
MCMONTH temp data sets expire 45 days after last usage;two backups kept.
MCNOLV1 no level 1 migration, goes directly to level 2 after 10days non-usage, intended primarily for GDGs
MCNOMIG perm data sets will never expire; no command or auto migration
MCNOBAK permanent; data sets will never expire; no autobackup,command backup only. This is the default managementclass for all BD2 data.
MCSLOWMG slowmig, automig 90 days after last usage directly to lvl 2, no lvl 1
MCSTLP short term, low-priority; automatically assigned to TSOlist and log data sets; data set will expire 105 daysafter last usage; no autobackup, command backup only, 1backup kept.
MCTEMP temporary; data sets will expire 4 days from creationor one day from last usage, whichever comes later;command migration only, no automigration; no backups.
MC4EVER permanent; data sets will never expire.

Data Classes

DCTINY for sequential datasets of approximately 50,000 bytes.
DCSMALL for sequential datasets of approximately 750,000 bytes
DCMANY will allow datasets to span several DASD volumes.

 


Tape Management System

TMS Expiration and Retention Dates TMS selects volumes for deletion based upon the expiration date supplied via JCL parameter EXPDT or the retention period supplied via JCL parameter RETPD. The value supplied via RETPD is converted to a date. If no EXPDT or RETPD value is supplied, then the TMS default of 7 day retention takes effect. However, if the step abends, open output tapes default to 2-day retention only.

Certain values supplied for EXPDT are TMS codes, rather than true dates. The only currently valid TMS codes are explained below:

98000 Used for external tapes unknown to TMS; used only when reading a tape created by an outside agency or when writing to a non-NWRDC tape volume
98nnn Retain for nnn days before scratching
99000 CATLG controlled; i.e., when the dataset is uncataloged, the tape will subsequently be scratched
99nnn Retain for nnn cycles before scratching; this should only be used with datasets with the same name, not with generation data sets
99365 Retain permanently