bonjour à tous
merci de m'expliquer la différence entre les termes batch et TP ?
je vous remercie par avance.
sinon autre question : y'a t'il plusieurs versions de TSO ?
bonjour à tous
merci de m'expliquer la différence entre les termes batch et TP ?
je vous remercie par avance.
sinon autre question : y'a t'il plusieurs versions de TSO ?
TSO : beeen, il y a surtout des installations différentes souvant les entreprises.
TP : traitement transactionnel, ou l'utilisateur dialogue avec le système. En général unitaire. Exemple : le programme avec lequel l'agent bancaire me créée ma nouvelle carte Premier
Batch : traitement par lots, lançé directement sur ma machine, et invisible par l'utilisateur. En général traitement de masse, très souvent périodique. Exemple : le programme qui toutes les nuits récupère l'ensemble des créations de cartes, et passe la commande de fabrication au fabricant de cartes(dont ma nouvelle carte Premier, le soir de l'exemple TP).
Versions TSO, dépend du z/OS intallé, mais pas de différence vu de l'utilisateur (à part peut-être quelques gadgets à la mode windows en z/OS 1.9)
TP MVS : CICS (base de donnée DB2) ou IMS (DLI)
En gros, système questions/réponses (via des maps transactionnelles écrans)
En COBOL ce qui change, on passe des EXEC CICS READ pour lire un fichier alors qu'en Batch on fait des READ après un OPEN INPUT et il faut déclarer le fichier (SELECT /FD ). Sous CICS, le fichier est déjà déclaré au lancement et sa gestion est centralisée par CICS.
Batch : comme déjà indiqué, traitement par lot. Exécution du programme via un JCL MVS soumis (SUBMIT TSO). Une EXEC qui spécifie le programme, des DD qui spécifient les fichiers. La programmation est différente. Fonctionnelement (il faut déclarer les fichiers) et techniquement (entrées/sorties natives ou EXEC CICS des différents services utilisés pour CICS en particulier, étant endendu que certains n'ont pas d'èquivalent (usuel) batch : GETMAIN, SEND et RECEIVE MAP par exemple)
pour être précis, on peut avoir du 100% MVS sans la moindre trace de CICS. C'est le cas à BNP Paribas, par exemple. Ou ils utilisent un outil interne, la SDO, pour tout ce qui est transactionnel(ça tourne sur des régions IMS, par contre).
l'avantage, c'est qu'on éradique les différences de programmation : un module est appelé de la même manière en batch ou TP.
l'inconvénient, c'est celui de toutes les solutions maisons : cout de mise en place, et difficulté de trouver des gens formés. Et peut-être aussi les performances(mais difficille pour moi d'en juger).
Autre différence entre le TP et le Batch : le mode d'accès aux données.
En TP, comme cela a été dit, on traite en général une entité de manière unitaire (un client, un contrat, un virement, etc.), donc l'accès doit être direct (sur clé). On utilise le plus souvent :
- soit des fichiers séquentiels indexés (VSAM KSDS) ;
- soit une base de donnée :
- relationnelle (DB2) ;
- réseau (IDMS) ;
- hiérarchique (DL1)...
L'accès aux données se fait via le moniteur transactionnel qui gère la concurrence d'accès - c'est pourquoi on n'ouvre pas un fichier en TP, c'est le moniteur qui prend ça en charge. Il est très fréquent que plusieurs transactions, ou plusieurs occurrences de la même transaction, mettent à jour en même temps un même fichier. Les programmes applicatifs sont techniquement des sous-programmes appelés par le moniteur (un CICS ou une région IMS sont un Batch "système" qui tourne avec un haute priorité).
En Batch, comme on traite de la masse, on utilise beaucoup plus souvent des fichiers séquentiels, quitte à les trier entre deux programmes applicatifs en fonction des besoins. Pour améliorer les performances, il n'est pas rare que les bases de données soient vidées dans des fichiers séquentiels avant traitement. A partir du moment où un programme Batch utilise un fichier en mise à jour, celui-ci est indisponible pour les autres traitements.
Même si on accède en Batch à une base de donnée, on veillera en général à ce que le fichier en entrée du traitement soit trié sur la clé d'accès aux données de la base. Dans le cas contraire, le système de gestion de fichier passera son temps à charger des pages en mémoire, et les performances vont s'effondrer. Il est donc généralement recommandé de ne traiter qu'une base par programme...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager