Trois paramètres associés aux fichiers sont à renseigner en CSD : STRINGS,
DATABUFFERS et INDEXBUFFERS.
STRINGS :
v
Il spécifie le nombre de strings ou requêtes pouvant être exécutées en
parallèle par VSAM sur un même fichier : normalement, un string est
consommé le temps de l'entrée-sortie sur disque.
Cependant, certains ordres échappent à cette règle :
READ UPDATE et STARTBR ou RESETBR réservent un string jusqu'aux
ordres REWRITE ou UNLOCK et ENDBR respectivement.
DATABUFFERS :
v
Il spécifie le nombre de buffers DATA devant être alloués par VSAM à
l'ouverture du fichier. Un minimum de deux buffers est nécessaire : un
pour la lecture du "control interval DATA", un pour le 'split' de "control
interval".
Par défaut : DATABUFFERS = STRINGS + 1
INDEXBUFFERS :
v
Il spécifie le nombre de buffers INDEX devant être alloués par VSAM à
l'ouverture du fichier. Le nombre minimum de buffers est de 1 par requête.
Il est toutefois préférable d'augmenter ce nombre car, pour un fichier ayant
trois niveaux d'INDEX, trois EXCP sont nécessaires pour pointer le CI
DATA recherché pour chaque requête en accès direct.
Il est conseillé d'allouer :
–
au minimum un buffer par niveau d'index + un buffer par string (valeur
de STRINGS)
–
au maximum : un buffer par CI de l'INDEX SET + un buffer par string.
Conclusion
Il est important de prévoir un nombre de buffers suffisant en fonction du
nombre de strings.
Il peut être préjudiciable de réserver un nombre trop important de buffers car
cela peut entraîner une pagination excessive, donc des EXCP.
Chapitre 10. Annexes
383