VSAM - RRDS

RRDS est connu sous le nom de jeu de données d'enregistrement relatif. Le cluster RRDS est similaire à un cluster ESDS. La seule différence est que les enregistrements RRDS sont accessibles parRelative Record Number (RRN), il faut coder NUMBEREDà l'intérieur de la commande DEFINE CLUSTER. Voici les principales caractéristiques de RRDS -

  • Un jeu de données d'enregistrement relatif contient des enregistrements identifiés par le Relative Record Number (RRN), qui est le numéro de séquence par rapport au premier enregistrement.

  • RRDS permet l'accès aux enregistrements par numéro comme l'enregistrement 1, l'enregistrement 2, etc. Cela fournit un accès aléatoire et suppose que le programme d'application dispose d'un moyen d'obtenir les numéros d'enregistrement souhaités.

  • Les enregistrements dans un ensemble de données RRDS peuvent être accédés séquentiellement, dans l'ordre relatif des numéros d'enregistrement, ou directement, en fournissant le numéro d'enregistrement relatif de l'enregistrement souhaité.

  • Les enregistrements d'un ensemble de données RRDS sont stockés dans des intervalles de longueur fixe. Chaque enregistrement est référencé par le numéro de son emplacement, le nombre peut varier de 1 au nombre maximum d'enregistrements dans l'ensemble de données.

  • Les enregistrements dans un RRDS peuvent être écrits en insérant un nouvel enregistrement dans un emplacement vide.

  • Les enregistrements peuvent être supprimés d'un cluster RRDS, laissant ainsi un emplacement vide.

  • Applications qui utilisent des enregistrements de longueur fixe ou un numéro d'enregistrement avec une signification contextuelle pouvant utiliser des ensembles de données RRDS.

  • RRDS peut être utilisé dans COBOLprogrammes comme n'importe quel autre fichier. Nous allons spécifier le nom du fichier dans JCL et nous pouvons utiliser le fichier KSDS pour le traitement à l'intérieur du programme. Dans le programme COBOL, spécifiez l'organisation des fichiers commeRELATIVE et vous pouvez utiliser n'importe quel mode d'accès (Sequential, Random or Dynamic) avec le jeu de données RRDS.

Structure du fichier RRDS

L'espace est divisé en intervalles de longueur fixe dans la structure de fichier RRDS. Un emplacement peut être soit complètement vide, soit complètement plein. Ainsi, de nouveaux enregistrements peuvent être ajoutés aux emplacements vides et les enregistrements existants peuvent être supprimés des emplacements qui sont remplis. Nous pouvons accéder directement à n'importe quel enregistrement en donnant le numéro d'enregistrement relatif. L'exemple suivant montre la structure de base du fichier de données -

Composant de données

Numéro d'enregistrement relatif Enregistrer le champ 1 Enregistrer le champ 2
1 Didacticiel Point
2 Mohtashim M.
3 Nishant Malik

Définition du cluster RRDS

La syntaxe suivante montre les paramètres que nous pouvons utiliser lors de la création d'un cluster RRDS.

La description des paramètres reste la même que celle mentionnée dans VSAM - module Cluster.

DEFINE CLUSTER (NAME(rrds-file-name)     -
BLOCKS(number)                           -
VOLUMES(volume-serial)                   -
NUMBERED                                 -
RECSZ(average maximum)                   -
[FREESPACE(CI-Percentage,CA-Percentage)] -
CISZ(number)                             -
[READPW(password)]                       -
[FOR(days)|TO(date)]                     -
[UPDATEPW(password)]                     -
[REUSE / NOREUSE])                       -
DATA                                     -
   (NAME(rrds-file-name.data))

Exemple

L'exemple suivant montre comment créer un cluster RRDS dans JCL à l'aide de l'utilitaire IDCAMS -

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1  EXEC PGM = IDCAMS
//SYSPRINT DD  SYSOUT = *
//SYSIN    DD  *
   DEFINE CLUSTER (NAME(MY.VSAM.RRDSFILE)  -
   NUMBERED                                -
   RECSZ(80 80)                            -
   TRACKS(1,1)                             -
   REUSE                                   - 
   FREESPACE(3 3) )                        -
   DATA (NAME(MY.VSAM.RRDSFILE.DATA))      
/*

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.RRDSFILE VSAM.

Suppression du cluster RRDS

Le cluster RRDS est 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.

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 lors de la suppression du cluster RRDS. La description des paramètres reste la même que celle mentionnée dans VSAM - module Cluster.

Exemple

L'exemple suivant montre comment supprimer un cluster RRDS dans JCL à l'aide de l'utilitaire IDCAMS -

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

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