VSAM - Cluster

Le cluster VSAM est défini dans JCL. JCL utiliseIDCAMSutilitaire pour créer un cluster. IDCAMS est un utilitaire, développé par IBM, pour les services de méthode d'accès. Il est principalement utilisé pour définir les ensembles de données VSAM.

Définition d'un cluster

La syntaxe suivante montre les principaux paramètres qui sont regroupés sous Define Cluster, Data et Index.

.DEFINE CLUSTER (NAME(vsam-file-name)      -
BLOCKS(number)                             -
VOLUMES(volume-serial)                     -
[INDEXED / NONINDEXED / NUMBERED / LINEAR] -
RECSZ(average maximum)                     -
[FREESPACE(CI-Percentage,CA-Percentage)]   -
CISZ(number)                               -
[KEYS(length offset)]                      -
[READPW(password)]                         -
[FOR(days)|TO(date)]                       -
[UPDATEPW(password)]                       -
[REUSE / NOREUSE] )                        -
DATA                                       -
   (NAME(vsam-file-name.data))             -
INDEX                                      -
   (NAME(vsam-file-name.index))            -
CATALOG(catalog-name[/password]))

Les paramètres au niveau du CLUSTER s'appliquent à l'ensemble du cluster. Les paramètres au niveau DATA ou INDEX s'appliquent uniquement aux données ou au composant d'index.

Nous discuterons de chaque paramètre en détail dans le tableau suivant -

Sr. Non Paramètres avec description
1

DEFINE CLUSTER

La commande Define Cluster est utilisée pour définir un cluster et spécifier les attributs de paramètre pour le cluster et ses composants.

2

NAME

NAME spécifie le nom du fichier VSAM pour lequel nous définissons le cluster.

3

BLOCKS

Blocks spécifie le nombre de blocs attribués au cluster.

4

VOLUMES

Volumes spécifie un ou plusieurs volumes qui contiendront le cluster ou le composant.

5

INDEXED / NONINDEXED / NUMBERED / LINEAR

Ce paramètre peut prendre trois valeurs INDEXED, NONINDEXED ou NUMBERED selon le type de jeu de données que nous créons. Pour les fichiers à séquence de clés (KSDS), l'option INDEXED est utilisée. Pour les fichiers à séquence d'entrée (ESDS), l'option NON INDEXED est utilisée. Pour les fichiers d'enregistrement relatif (RRDS), l'option NUMBERED est requise. Pour les fichiers linéaires (LDS), l'option LINEAR est requise. La valeur par défaut de ce paramètre est INDEXED. Nous discuterons plus en détail de KSDS, ESDS, RRDS et LDS dans les prochains modules.

6

RECSZ

Le paramètre Taille de l'enregistrement a deux valeurs qui sont la taille d'enregistrement moyenne et maximale. La moyenne spécifie la longueur moyenne des enregistrements logiques dans le fichier et la valeur maximale indique la longueur des enregistrements.

sept

FREESPACE

Freespace spécifie le pourcentage d'espace libre à réserver pour les intervalles de contrôle (CI) et les zones de contrôle (CA) du composant de données. La valeur par défaut de ce paramètre est zéro pourcentage.

8

CISZ

CISZ est connu sous le nom de taille de l'intervalle de contrôle. Il spécifie la taille des intervalles de contrôle.

9

KEYS

Le paramètre Keys est défini uniquement dans les fichiers séquencés par clé (KSDS). Il spécifie la longueur et le décalage de la clé primaire à partir de la première colonne. La plage de valeurs de ce paramètre va de 1 à 255 octets.

dix

READPW

La valeur du paramètre READPW spécifie le mot de passe du niveau de lecture.

11

FOR/TO

La valeur de ce paramètre spécifie la durée en termes de date et de jours pour conserver le fichier. La valeur par défaut de ce paramètre est zéro jour.

12

UPDATEPW

La valeur du paramètre UPDATEPW spécifie le mot de passe du niveau de mise à jour.

13

REUSE / NOREUSE

Le paramètre REUSE permet de définir des clusters qui peuvent être remis à l'état vide sans les supprimer et les redéfinir.

14

DATA - NAME

La partie DATA du cluster contient le nom de l'ensemble de données qui contient les données réelles du fichier.

15

INDEX-NAME

La partie INDEX du cluster contient la clé primaire et le pointeur de mémoire pour l'enregistrement correspondant dans la partie données. Il est défini lorsqu'un cluster séquencé par clé est utilisé.

16

CATALOG

Le paramètre de catalogue désigne le catalogue sous lequel le fichier sera défini. Nous discuterons du catalogue séparément dans les prochains modules.

Exemple

Voici un exemple de base pour montrer comment définir un cluster dans JCL -

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1  EXEC PGM = IDCAMS
//SYSPRINT DD  SYSOUT = *
//SYSIN    DD  *
   DEFINE CLUSTER (NAME(MY.VSAM.KSDSFILE)  -
   INDEXED                                 -
   RECSZ(80 80)                            -
   TRACKS(1,1)                             -
   KEYS(5  0)                              -
   CISZ(4096)                              -                            
   FREESPACE(3 3) )                        -
   DATA (NAME(MY.VSAM.KSDSFILE.DATA))      -
   INDEX (NAME(MY.VSAM.KSDSFILE.INDEX))
/*

Si vous exécutez le JCL ci-dessus sur le serveur Mainframes. Il doit s'exécuter avec MAXCC = 0 et il créera le fichier MY.VSAM.KSDSFILE VSAM.

Suppression d'un cluster

Pour supprimer un fichier VSAM, le cluster VSAM doit être supprimé à l'aide de l'utilitaire IDCAMS. La commande DELETE supprime l'entrée du cluster VSAM du catalogue et supprime éventuellement le fichier, libérant ainsi l'espace occupé par l'objet. Si l'ensemble de données VSAM n'est pas expiré, il ne sera pas supprimé. Pour supprimer ces types d'ensembles de données, utilisez l'option PURGE.

DELETE data-set-name CLUSTER  
[ERASE / NOERASE] 
[FORCE / NOFORCE] 
[PURGE / NOPURGE] 
[SCRATCH / NOSCRATCH]

La syntaxe ci-dessus montre les paramètres que nous pouvons utiliser avec l'instruction Delete. Nous discuterons chacun d'eux en détail dans le tableau suivant -

Sr. Non Paramètres avec description
1

ERASE / NOERASE

L'option ERASE est spécifiée pour remplacer l'attribut ERASE spécifié pour l'objet dans le catalogue. L'option NOERASE est prise par défaut.

2

FORCE / NOFORCE

L'option FORCE est spécifiée pour supprimer SPACE et USERCATALOG même s'ils ne sont pas vides. L'option NOFORCE est prise par défaut.

3

PURGE / NOPURGE

L'option PURGE est utilisée pour supprimer l'ensemble de données VSAM si l'ensemble de données n'a pas expiré. L'option NOPURGE est prise par défaut.

4

SCRATCH / NOSCRATCH

L'option SCRATCH est spécifiée pour supprimer l'entrée associée à l'objet de la table des matières du volume. Il est principalement utilisé pour les ensembles de données non vsam comme les GDG. L'option NOSCRATCH est prise par défaut.

Exemple

Voici un exemple de base pour montrer comment supprimer un cluster dans JCL -

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEPNAME EXEC PGM = IDCAMS
//SYSPRINT DD  SYSOUT = *
//SYSIN    DD  *
   DELETE MY.VSAM.KSDSFILE CLUSTER
	PURGE
/*

Si vous exécutez le JCL ci-dessus sur le serveur Mainframes. Il doit s'exécuter avec MAXCC = 0 et supprimera le fichier MY.VSAM.KSDSFILE VSAM.