IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Difference between DATACLAS=MULTIVOL and VOLUME=(,,,n)


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
rohanthengal

Active User


Joined: 19 Mar 2009
Posts: 206
Location: Globe, India

PostPosted: Mon Nov 25, 2019 4:09 pm
Reply with quote

We are in need to fix one space issue.
It is decided to go with multi volume dataset allocation.

Would like to know the difference between DATACLAS=MULTIVOL and VOLUME=(,,,n).

Which one to go for ?
Back to top
View user's profile Send private message
rohanthengal

Active User


Joined: 19 Mar 2009
Posts: 206
Location: Globe, India

PostPosted: Mon Nov 25, 2019 4:29 pm
Reply with quote

Code:
DATACLAS=MULTIVOL and VOLUME=(,,,n)
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8697
Location: Dubuque, Iowa, USA

PostPosted: Mon Nov 25, 2019 7:32 pm
Reply with quote

DATACLAS requires SMS to be running while VOLUME= is a DCB parameter that applies whether or not SMS is running. DATACLAS can be used to specify a number of data set values besides just MULTIVOL.
Quote:
Which one to go for ?
If your site has a standard, follow it. If your site has SMS running, and the other parameters of the DATACLAS are compatible with your desired data set, use the DATACLAS -- otherwise, use VOLUME=.
Back to top
View user's profile Send private message
rohanthengal

Active User


Joined: 19 Mar 2009
Posts: 206
Location: Globe, India

PostPosted: Mon Nov 25, 2019 7:44 pm
Reply with quote

Thanks Robert
Back to top
View user's profile Send private message
steve-myers

Active Member


Joined: 30 Nov 2013
Posts: 917
Location: The Universe

PostPosted: Mon Nov 25, 2019 9:07 pm
Reply with quote

Robert Sample wrote:
... VOLUME= is a DCB parameter that applies whether or not SMS is running. DATACLAS can be used to specify a number of data set values besides just MULTIVOL.
Quote:
Which one to go for ?
If your site has a standard, follow it. If your site has SMS running, and the other parameters of the DATACLAS are compatible with your desired data set, use the DATACLAS -- otherwise, use VOLUME=.

No. VOLUME=(,,,n) is a JCL parameter. It has nothing to do with the DCB. It defines the maximum number of volumes that can be specified - usually created - for the allocation. It does not have to be specified for an existing data set as it is implied by the number of volumes explicitly specified for the data set or specified in the catalog for the data set. The default is 5.

I know little about how DATACLAS and volume limits interact. Perhaps someone with a more detailed knowledge of SMS can help us here. Without more detailed knowledge about this, if I was concerned the data set would require more than 5 volumes I'd specify VOLUME=(,,,n) in my JCL .
Back to top
View user's profile Send private message
Joerg.Findeisen

Senior Member


Joined: 15 Aug 2015
Posts: 1255
Location: Bamberg, Germany

PostPosted: Tue Nov 26, 2019 3:55 pm
Reply with quote

Best way to go for Multivolume is by DATACLAS as this allows the use of several Space Constraint Relief methods to avoid an X37 ABEND. In addition the jobs will not fill up the catalog with Candidate Volumes as this would be the case if a static VOL=(,,,<n>) parm is coded in JCL. However this requires DVC to be enabled in the DATACLAS.

There is only one thing to consider if you have lots of datasets and a high DVC value set, that's the TIOT. But error messages will tell you if that's the case. icon_wink.gif
Back to top
View user's profile Send private message
steve-myers

Active Member


Joined: 30 Nov 2013
Posts: 917
Location: The Universe

PostPosted: Tue Nov 26, 2019 9:08 pm
Reply with quote

Joerg.Findeisen wrote:
... the jobs will not fill up the catalog with Candidate Volumes as this would be the case if a static VOL=(,,,<n>) parm is coded in JCL. However this requires DVC to be enabled in the DATACLAS.

There is only one thing to consider if you have lots of datasets and a high DVC value set, that's the TIOT. But error messages will tell you if that's the case. icon_wink.gif

  1. I thought candidate volumes were for VSAM. Is space reserved for candidate volumes for non VSAM??? I don't know!!! In any event, the space usage for a candidate volume is trivial, even with thousands of data sets having space reserved for candidate volumes is unlikely to blow out the catalog space.
  2. TIOT space is required for devices, not volumes. Of course with disk, each device / volume requires TIOT space. Even with multiple volume tapes, it's probably silly to provide one drive for each volume. Two drives is usually enough for tape, and even that's over doing it with robots mounting the tapes!
Back to top
View user's profile Send private message
Joerg.Findeisen

Senior Member


Joined: 15 Aug 2015
Posts: 1255
Location: Bamberg, Germany

PostPosted: Thu Nov 28, 2019 12:41 am
Reply with quote

1) You can add candidates to NVSAM datasets with IDCAMS AVOL(* ..), this works although it's static and will definitely stress your catalog. The catalog is stressed by this with (longer records) inserts and deletes and this might be one of the reasons why the option CA Reclaim was introduced. Conclusion, Do not use - consider Dynamic Volume Count (aka DVC). Makes more sense, less work for the Storage Monkey.

2) TIOT has devices, right. With 64K you get (TIOT SIZE: 64 (MAX DDS: 3273)) leading to a maximum of nearly 20 volumes per DD if used up to the full. Hence I said, do not over use DVC and watch messages. In my shop some application hit the limit.
Back to top
View user's profile Send private message
steve-myers

Active Member


Joined: 30 Nov 2013
Posts: 917
Location: The Universe

PostPosted: Fri Nov 29, 2019 10:45 am
Reply with quote

Joerg.Findeisen wrote:
...TIOT has devices, right. With 64K you get (TIOT SIZE: 64 (MAX DDS: 3273)) leading to a maximum of nearly 20 volumes per DD if used up to the full. Hence I said, do not over use DVC and watch messages. In my shop some application hit the limit.

Yes and no. It has 24 bytes of fixed data followed by variable data. It has one entry for every DD statement. These entries vary in size; the principle determination of their size is the number of devices allocated to the DD statement.

It is really improper to say a TIOT can have xx DD statements because of the variable size of each DD entry. When you say xx DD statements you are making the assumption each DD statement has one device. Not safe.
Back to top
View user's profile Send private message
Joerg.Findeisen

Senior Member


Joined: 15 Aug 2015
Posts: 1255
Location: Bamberg, Germany

PostPosted: Fri Nov 29, 2019 1:45 pm
Reply with quote

I did use D ALLOC,OPTIONS for the display of MAX DDS.
Back to top
View user's profile Send private message
Pete Wilson

Active Member


Joined: 31 Dec 2009
Posts: 582
Location: London

PostPosted: Wed Jul 01, 2020 6:24 pm
Reply with quote

Joerg.Findeisen wrote:
I did use D ALLOC,OPTIONS for the display of MAX DDS.


I pulled this together when we had the same issue with some application jobs exceeding TIOT. We generally have the DVC limit set to 20 in our Dataclases. NOTE: Once a volume switch occurs the datasets have the number of candidates to take it up to the DVC added as candidates.

Table 1. Relationship size of TIOT and maximum number of DDs allowed

Code:
Dec   Hex   Size of TIOT   Maximum number of single unit DD Allowed   Maximum number of DDs allowed when every DD requests the maximum number of units (59)
16   10   16384 (16K)   816                  64
17   11   17408 (17K)   867                  68
24   18   24576 (24K)   1225                  97
25   19   25600 (25K)   1277                  101
32   20   32768 (32K)   1635                  129
40   28   40960 (40K)   2045                  162
48   30   49152 (48K)   2454                  194
56   38   57344 (56K)   2864                  227
64   40   65536 (64K)   3273                  259


1. Note:
Your calculations need to take into account that the size of a TIOT entry, for a DD statement or a Dynamic Allocation, increases by four (4) bytes for every SMS Candidate volume assigned (e.g., by your DATACLAS), regardless of whether they're guaranteed space.
2. For a VSAM KSDS the number of 4-byte entries in the TIOT for the data set depends on whether or not the data set is defined as reusable. The count of entries in the TIOT is the count of candidate volumes for the data and index components plus:

• For a reusable data set - the number of volumes used by the data component plus the number of volumes used by the index component.
• For a nonreusable data set - the number of volumes in the set of volumes used by the data and index component.

3. Use the following to calculate the maximum number of DDs allowed per Job Step:

a. The TIOT Prefix, Header, and Trailer consume sixty (60) ('3C'x) bytes of the total TIOT space available to a Job Step.
b. A DD statement requesting a single unit requires twenty (20) bytes ('14'x) of TIOT space. The TIOT space requirement for entire step is 80 bytes.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Timestamp difference and its average ... DB2 11
No new posts Volume chain using DFSORT DFSORT/ICETOOL 17
No new posts Difference when accessing dataset in ... JCL & VSAM 7
No new posts volume mass delete RMM JCL & VSAM 2
No new posts What is the difference between Taskty... Compuware & Other Tools 2
Search our Forums:

Back to Top