Vous êtes sur la page 1sur 3

Programmation et systèmes transactionnels

par Jacques PRINTZ

Ancien Élève de l’École Centrale des Arts et Manufactures Professeur Titulaire de la Chaire de Génie Logiciel au Conservatoire National des Arts et Métiers

Gérard MORGANTI

Ingénieur CNAM Directeur Général de la société MOSAIC

Jacques WAJNFLASZ

Ancien Élève de l’École Centrale des Arts et Manufactures Consultant en Sécurité des Systèmes d’information (SRTI System)

[1]

GRAY (J.) et REUTER (A.). – Transaction processing : concepts and techniques. Mor- gan Kaufman Publishers, 1993.

[2]

The benchmark handbook for database and

[3]

transaction processing systems. Morgan Kaufman Publishers, 1991. EPPINGER (J.), MUMMERT (L.) et SPECTOR (A.). – Camelot and Avalon : A distributed transaction facility. Morgan Kaufman Pu- blishers, 1991.

[4]

CHRISTIAN (F.). – Understanding fault tole- rant distributed systems. CACM, vol. 34, n° 2,

1991.

[5]

GRAY (J.) and alii. – The recovery manager of the system R database manager. ACM Computing Survey, vol. 13, n° 2, 1981.

Bibliographie

[6]

HAËRDER (T.) et REUTER (A.). – Principles of transaction-oriented database recovery.

ACM Computing Survey, vol. 15, n° 4, 1983.

[7]

ASTRAHAN (M.) and alii. – System R : an architectural overview. IBM systems journal, vol. 20, n° 1, 1981.

[8]

ANDERSON (T.) et LEE (P.). – Fault-tolerance principle and practice. Englewood Cliffs, Prentice Hall, 1981.

[9]

CLAYBROOK (B.). – OLTP Online Transaction processing systems. Wiley & Sons, 1992.

[10]

PRIMATESTA (F.). – TUXEDO, An open approach to OLTP. Prentice Hall, 1995.

BERNSTEIN (P.) et NEWCOMER (E.). – Princi- ples of transaction Processing. Morgan Kauf- man Publishers, 1997.

Dans les Techniques de l’Ingénieur

PEPING (J.). – Architecture des systèmes de stockage. Traité Informatique H 2 538 (1997).

Revues

Les revues IBM Systems journal, ACM Transac- tions on database systems, ACM Transactions on computer systems publient régulièrement, et depuis longtemps, des articles de grande qualité traitant du transactionnel.

[12]

[11]

La plupart des constructeurs et éditeurs dispo- sent de sites Web sur lesquels leurs offres produits sont présentées.

Offre produits

Transactionnel constructeurs

La plupart des constructeurs d’ordinateurs offrent des systèmes transac- tionnels (pour une information complète et à jour, il convient de se reporter aux descriptifs des différents produits).

IBM offre plusieurs environnements transactionnels. Le plus ancien est IMS (Information Management System). C’est l’environnement transactionnel de référence pour les très grands systèmes IBM.

CICS (Customer Information Control System), plus récent, est disponible sur toutes les plates-formes IBM : MVS, OS/2, AS/400 et AIX. CICS a été le pre- mier système commercial à offrir un service sûr en architecture distribuée à travers le protocole LU6.2 qui est un standard de fait (appelé également APPC dans l’architecture SAA d’IBM). LU6.2 a servi de modèle à la norme OSI/TP.

BULL offre sur ces systèmes GCOS-7 et GCOS-8 un environnement transac- tionnel TDS (Transaction Driven System) très performant qui tire parti de l’architecture système sous-jacente.

TANDEM, qui a depuis l’origine axé son offre système sur des caractéristi- ques « Non-stop », propose un environnement transactionnel TMF (Transac- tion Monitoring Facility) étroitement associé au système d’exploitation GUARDIAN. TANDEM a été le premier constructeur à intégrer des fonctions transactionnelles au cœur de son système d’exploitation ce qui permet un

support particulièrement efficace du multiprocesseur (jusqu’à 16) et des redondances nécessaires au masquage des pannes.

DEC offre sur son système d’exploitation VMS un environnement transac- tionnel ACMS (Application Control and Management System) très orienté architecture distribuée hétérogène UNIX et les systèmes ouverts.

Systèmes ouverts

TUXEDO a été initialement développé par AT&T ; il appartient désormais à BEA. TUXEDO offre l’essentiel des fonctions transactionnelles. TUXEDO est disponible sur la plupart des plates-formes UNIX. En 1997, la part de marché de TUXEDO, en environnement UNIX, est de l’ordre de 35 %. La figure A pré- sente la structure d’une application utilisant TUXEDO.

Le composant principal de TUXEDO est le serveur de nom : le Bulletin Board, qui permet de poster et de recevoir des messages. La figure B présente un schéma de la structure du Bulletin Board.

En 1, le client consulte le Bulletin Board, puis envoie un message au serveur en 2. En 3, le serveur envoie sa réponse.

ENCINA a été développé par TRANSARC Corporation sur la base de travaux effectués à l’Université Carnegie Mellon dans la mouvance OSF-DCE. L’envi- ronnement ENCINA comporte un ensemble complet de services transaction- nels, y compris une extension du langage C permettant l’écriture de clients et de serveurs transactionnels.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique

Doc. H 2 708 1

P

O

U

R

E

N

S

A

V

O

I

R

P

L

U

S

P

O

U

R

E

N

S

A

PROGRAMMATION ET SYSTÈMES TRANSACTIONNELS

Application client TUXEDO Send-data Bulletin Board Receive-data
Application
client
TUXEDO
Send-data
Bulletin
Board
Receive-data

Application

serveur

SGBD relationnel

Serveur SQL
Serveur
SQL
Base de données
Base de
données

SQL-read

SQL-write

SQL-read SQL-write
SQL-read SQL-write
serveur SGBD relationnel Serveur SQL Base de données SQL-read SQL-write Une application client/serveur

Une application client/serveur

Figure A – Une application sous TUXEDO

V Sphère de contrôle de TUXEDO O Serveur de noms I 1 Bulletin CLIENT SERVEUR
V
Sphère de contrôle de TUXEDO
O
Serveur
de noms
I
1
Bulletin
CLIENT
SERVEUR
Board
R
2
3
API TUXEDO
API
TUXEDO
P
L
Queue de
Queue de
messages client
messages serveur
U

S

Figure B – Le Bulletin Board de TUXEDO

Il faut enfin signaler les produits CICS/6000 sur RS/6000 d’IBM et NCR/TOP END.

Transactionnel associé aux SGBD relationnels

La plupart des SGBD relationnels ont un environnement transactionnel permettant le développement d’applications transactionnelles comme par exemple ORACLE. Beaucoup peuvent être interfacés avec TUXEDO.

Ce rapide parcours, probablement très incomplet, montre la diversité de l’offre transactionnelle qui est la pierre angulaire des systèmes d’entreprises. Cette offre résulte de l’effort de centaines de personnes sur plusieurs décen- nies.

Elle permet la mise en place de système d’information d’une très grande fia- bilité par la réutilisation systématique d’un ensemble de fonctions constam- ment améliorées et adaptées au besoin réel des entreprises.

Transactionnel et Internet

Le développement d’Internet et d’Intranet dans le monde de l’entreprise va probablement susciter une offre de services transactionnels intégrés au Web de façon à permettre aux clients d’accéder aux différents serveurs de façon sûre. Le commerce électronique, par exemple, exige de pouvoir passer des commandes, d’effectuer des transactions bancaires, de communiquer des numéros de comptes bancaires ou de cartes de crédit avec la même qualité de service, la même sécurité et les mêmes performances que s’il s’agissait d’applications bancaires traditionnelles. Tout laisse à penser que TUXEDO devrait y tenir un rôle de premier plan.

Normalisation

Le standard de fait dans le domaine des protocoles de transactionnel coopératif est le protocole APPC (Advanced Program to Program Communica- tion) d’IBM.

L’OSI a normalisé sous le nom d’OSI/TP un protocole de transactionnel coopératif équivalent à APPC qui est bâti sur la session OSI alors qu’APPC est bâti sur la session SNA d’IBM. Les applications utilisant APPC sont portables sur OSI/TP.

Dans le monde des systèmes ouverts, X/Open a développé un modèle de traitement transactionnel (DTP : Distributed Transaction Processing) dont une première version a été livrée en 1991. Le modèle inclut différents interfaces (TX, XA et XA+, CRM, RM, XAP-TP) ainsi qu’un langage de définition de tran- saction (STDL). L’architecture X/Open DTP est schématisée sur la figure C.

Enfin, il faut signaler les travaux de l’OMG qui a défini un service objet (OTS : Object Transaction Service) basé sur CORBA.

ISO/IEC ISP 12061-11995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 1 : Introduction aux profils de traitement transactionnel.

ISO/IEC ISP 12061-21995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré-

parti. Partie 2 : Prise en charge des APDU d’OSI IP.

ISO/IEC ISP 12061-31995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 3 : Prise en charge des APDU de CCR (Pu- blié actuellement en anglais seulement). ISO/IEC ISP 12061-41995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 4 : Prise en charge des PDU de session, de présentation et d’ACSE. ISO/IEC ISP 12061-51995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 5 : Transactions garanties par l’applica- tion. Contrôle polarisé (ATP11). ISO/IEC ISP 12061-61995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti.

Doc. H 2 708 2

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique

PROGRAMMATION ET SYSTÈMES TRANSACTIONNELS

Application

Programmes

en STDL

Programmes en langage x

Programmes en STDL Programmes en langage x Gestionnaires de ressources (RM) XA Gestionnaires de

Gestionnaires de

ressources (RM)

XA

Gestionnaires de

transactions (TM)

Gestionnaires de transactions (TM)

XA+

ressources (RM) XA Gestionnaires de transactions (TM) XA+ Gestionnaires de communication (CRM) XAP-TP OSI-TP Vers
ressources (RM) XA Gestionnaires de transactions (TM) XA+ Gestionnaires de communication (CRM) XAP-TP OSI-TP Vers

Gestionnaires de

communication (CRM)

XAP-TP

OSI-TP

(RM) XA Gestionnaires de transactions (TM) XA+ Gestionnaires de communication (CRM) XAP-TP OSI-TP Vers les autres
(RM) XA Gestionnaires de transactions (TM) XA+ Gestionnaires de communication (CRM) XAP-TP OSI-TP Vers les autres

Vers les autres TP

TX

TX

TX

Figure C – Architecture du modèle X/Open DTP

Partie 6 : Transactions garanties par l’applica- tion. Contrôle partagé (ATP12). ISO/IEC ISP 12061-71995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 7 : Transactions non chaînées garanties par le fournisseur. Contrôle polarisé (ATP21).

ISO/IEC ISP 12061-81995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 8 : Transactions non chaînées garanties par le fournisseur. Contrôle partagé (ATP22).

ISO/IEC ISP 12061-91995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 9 : Transactions chaînées garanties par le fournisseur. Contrôle polarisé (ATP31).

ISO/IEC ISP 12061-101995Technologies de l’information. Interconnexion de systèmes ouverts (OSI). Profils normalisés internationaux : Traitement transactionnel ré- parti. Partie 10 : Transactions chaînées garanties par le fournisseur. Contrôle partagé (ATP32).

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique

Doc. H 2 708 3

P

O

U

R

E

N

S

A

V

O

I

R

P

L

U

S