of 62 /62
Manipulations multibases et distribuées Partie 3 Witold Litwin [email protected]

1 Manipulations multibases et distribuées Partie 3 Witold Litwin [email protected]

Embed Size (px)

Citation preview

Page 1: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

1

Manipulations multibases et distribuées

Partie 3

Manipulations multibases et distribuées

Partie 3

Witold [email protected]

Page 2: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

2

Transactions

Contrôle de concurrence et de consistence:En présence d'autonomieEn absence de contrôle centralisé (global)

Page 3: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

3

Transactions ACID

Opérations atomiques inexprimables avec une requête relationnelle.– Exécutées entièrement ou pas du tout

Préservant la consistance de la BD comme si l'usager était isolé sur la BD A effet durable sur la BD, une fois

terminées comme prévu

Page 4: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

4

Primitives de gestion de transactions

BEGIN, COMMIT, ROLLBACKBEGIN TRANSACTION

UPDATE Compte1

Val = Val -100

IF SQLCODE <> 0 ROLLBACK ; EXIT ;

UPDATE Compte2

Val = Val + 100

IF SQLCODE <> 0 ROLLBACK ; EXIT;

COMMIT

Page 5: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

5

Concurrence

Les BDs étant partagées, les transactions pourraient être exécutées:– l'une après l'autre– simultanément

» meilleures performances

» possibilités d'inconsistances dans la base

Théorie de concurrence analyse les problèmes d'accès simultané

Page 6: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

6

Verrou mortel

Les transactions s'attendent mutuellement (deadlock)

Solution typique:– avorter une de transactions (la victime)– le choix est fait par le gestionnaire des verrous

(lock manager)

Page 7: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

7

Les exécutions correctes

SérialisabilitéLes exécutions concurrentes sont correctes ssi

leur résultat est équivalent à celui d'une exécution sérielle

Le critère naturel et le plus populaire

Page 8: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

8

Cas MBDArchitecture de référence

TM

TM TM TM

Appslocales

Appslocales

AppMDB

Page 9: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

9

Cas MBDArchitecture de référence

TM

TM TM TM

Appslocales

Appslocales

AppMDB

Transaction

Sous-transact.

Sous-transact.

Sous-transact.

Page 10: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

10

Cas MBDArchitecture de référence

TM

TM TM TM

Appslocales

Appslocales

AppMDB

Coordinateur

Participant Participant Participant

Page 11: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

11

Quelles transactions ??Critères de réference :

Sérialisabilité ?ACID ?Temps global ?

Problème nouveau. Si à l'exécution d'une transaction T

- certaines sous-transactions commettent- une ou plus avortent

alors l'exécution de T est-elle correcte ou pas ?

Page 12: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

12

Quelles transactions ??Réponse industrielle actuelle

Pas correcteIl faut le modèle ACID

Solutions techniquesVérouillage à deux phases (2-phase

locking)Committement à deux phases (2-phase

commit)Base de temps global (DCE)

Page 13: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

13

Verrouillage à deux phases (2PL)

1-ère phase : tous les verrouillages2-ème phase : tous les déverrouillages

2-ème phase est le +souvent après lecommit (strict 2-PL). Pourquoi ?

Problème:Verrou mortel (2-PL)Mal adapté aux transactions longues

Page 14: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

14

2-PCLe coordinateur envoie les N sous-

transactions et attend N messages EOTs(end-of-transaction)

Alors, il envoie N messages Vote

Chaque participant journalise sa sous-transaction et si tout est OK, alorsenvoie le message RTC (ready-to-commit)

Si N messages RTC sont reçus, alors lecoordinateur envoie le message Commit

Page 15: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

15

Avantages

Atomicité garantieSimplicité

Problèmes

Blocage (2-PC)

A quel moment ??

Nombre de messages échangéesProtocoles de terminaison

Page 16: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

16

Solutions

Nouveaux modèles de transaction (non-ACID) etnotamment:

Compensation & transactions flexibles Dates de valeur

Toute transaction T est munie d'une date de valeur V(par l'application ou le système)

quand la date V arrive, la transaction doit être terminéesinon elle est avortée par le système

Règle de prioritétoute T estampille toute donnée D utilisée avec V.dans le cas d'un conflit d'accès à D, la priorité va à T

avec V minimal.

Page 17: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

17

si une transaction T2 avec V2 > V avait déjàestampillé D, alors T2 est localement avortéeet attend la fin de T.

Propriétés intéressantes:

Jamais de verrou mortelPossibilité de commitement implicite, sans

blocage, et sans messages, à la date de valeurApproche bien adapté également au BDs

temps-réelProblème pratique principal

Comment déterminer les dates de valeurEvitement de "livelock" (une transaction

toujours avortée et relancée)

Page 18: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

18

T31T2820

W31(C)

W28 (A)

28

31

W31 (B)

Site 1 Site 2

t

Page 19: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

19

T31T2820

W31(C)

W31(A)W28 (A)

28

31

W31 (B)

Site 1 Site 2

t

Page 20: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

20

T31T2820

W31(C)

W31(A)W28 (A)

28 C28

31 C31

W31 (B)

Site 1 Site 2

t

Page 21: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

21

T31T2820

W31(C)

W31(A)W28 (A)

28 C28

31 C31

W28 (B)

W31 (B)

Site 1 Site 2

t

Page 22: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

22

T31T2820

W31(C)

W31(A)W28 (A)

28 C28

31 C31

W28 (B)

W31 (B)

A31

C28

C31

Site 1 Site 2

t

Page 23: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

23

Protocoles & standards d'intéroperabilité MBD

La seule voie pour la coopération des SGBD ODBC (Open Database Connectivity) standard interface, &

protocole – bits et octets encodent :

» ordres SQL & tables résultats de ceux-ci» ordre de gestion de connections et d'exécution répartie» Locking & 1PC » API à 2 niveaux, jusque-là

"Middleware" supporté par pratiquement tous les producteurs de SGBD ou de "front-ends"

Page 24: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

24

Protocoles & standards MBDIndustriels autres que ODBC

Data Access Language (DAL)– Disponible sur Apples depuis 1989

» un dialecte de SQL

Distributed Relational Database Access (DRDA)– IBM, une partie de System Application Arch. (SAA)

EDA-SQL– Inf. Builders ; un dialecte de SQL et une API

Page 25: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

25

ODBCOrigines

ISO - RDA

Intl. Standard Org. Remote Database Access Protocol

commencé vers 1988 Draft Intl. Standard depuis

1991

Page 26: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

26

ODBCOrigines

SQL-Access

ISO - RDA

SQL - Access GroupConsortium Privé de

40 Comp.Crée sous l'impulsion

de J. Gray en 1989

Page 27: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

27

ODBCOrigines

ODBC

SQL-Access

ISO - RDA

Microsoftcoup de poing

sur la table

Page 28: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

28

ODBC Architecture

Programme d'application

Gestionnaire de Drivers

Driver Driver Driver

Btrieve Excell Sybase

Interface ODBC

Single TierDriver Multiple Tier

Driver

Driver Passerelle

DB2

PasserelleMicroDécision

Systems

Page 29: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

29

ODBC : quelques drivers

HP : ALLBASE/SQL CA : IDMS, DATACOM, VSAM, DL/1, TOTAL... CrossAccess ; IMS, VSAM, IDMS, RMS... IBM : DB2 DBA ODBC driver (Siemens-Nixdorf)

– INFORMIX, ORACLE, INGRES, SESAM/SQL, UDS/SQL...

DDA/ODBC driver (Bull)– ORACLE, INFORMIX, INGRES, DB2, RDB...

Contacte Microsoft pour la liste à jour

Page 30: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

30

ODBC L'interface

– offre l'API unique aux applications» connections

» gestion de mémoires

» ordres SQL

Le gestionnaire de drivers– charge le driver approprié– passe les ordres de connection et de SQL– récupère les résultats en format ODBC

Page 31: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

31

ODBC Le driver

– traduit les ordres SQL & API vers ceux de la source de données» décompose SQL

Single-tier

» passe SQL à la source multiple-tier

– SQL ODBC traduit

– SQL non-ODBC non-traduit ("pass through")

– traduit le format de données» à l'envoi» au retour

– traduit les codes d'erreur vers ceux standard

Page 32: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

32

ODBCNiveaux de conformité

Fonctions offertes par un driver– API

» Core Tout le driver

» Level1» Level2

– SQL» Minimum

Tout le driver

» Core» Extended

Page 33: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

33

ODBC Fonctions de Core API

Alloue et libère

– environnement, connections et "handles"» SQLAllocEnv, SQLAllocConnect, SQLAllocStmt

» SQLFreeStmt, SQLFreeConnect, SQLFreeEnv

– fonctions à executer avant toute connection Connecte au sources de données et déconnecte

» SQLConnect, SQLDisconnect

Prépare et exécute ordres SQL» SQLPrepare, SQLExecute, SQLExecDirect, SQLCancel,

SQLGetCursorName, SQLSetCursorName

Alloue mémoire pour les paramètres et résultats de SQL» SQLBindCol

Page 34: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

34

ODBC Fonctions de Core API

Trouve des données dans le résultat» SQLFetch

Trouve les metadonnées du résultat» SQLRowCount, SQLNumResultsCols, SQLDescribeCol,

SQLColAttributes

Commit et rollback» SQLTransact

Gère les codes erreur» SQLError

Page 35: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

35

ODBC Fonctions Level1 API

Fonctions de Core API avec un ordre suppl.» SQLBindParameter (prép. des ordres SQL)

Connections avec les boites de dialogue– spécifiques aux drivers

» SQLDriverConnect

Requêtes aux metadonnées de la connection et de l'ordre en cours » SQLSetConnectOption, SQLGetConnectOption

» SQLSetStatementOption, SQLGetStatementOption

Envoie d'une partie de paramètres de l'ordre ou du résultat– utile pour des données longues

» SQLPutData, SQLParamData, SQLGetData

Page 36: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

36

ODBC Fonctions Level1 API

Requêtes au catalogues des attributs, tables et stats» SQLColumns, SQLSpecialColumns,

SQLStatistics,SQLTables,

Requêtes aux metadonnées du driver et de la source de données– types de données supportés, fonctions aggr., niveau de conformité

ODBC...

» SQLGetInfo, SQLGetFunctions,SQLGetTypeInfo

Page 37: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

37

ODBC Fonctions Level2 API

Level1 "Browsing" de l'info sur la connection et les sources

disponibles» SQLBrowseConnect, SQLDataSources, SQLDrivers

Envoi des tables ("arrays") de valeurs de paramètres» SQLParamOptions

"Browsing" de l'info sur les paramètres et résultats– le nombre et les param. individuels

» SQLDescribeParam, SQLNumParams, SQLMoreResults

Gère les curseurs "scrolable"» , SQLSetScrollOptions, SQLSetPos, SQLExtendFetch

Page 38: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

38

ODBC Fonctions Level2 API

Laisse-passer un dialecte de SQL– ordres spécifiques de la source de données

» SQLNativeSql Requêtes aux catalogues SQL

– privilèges, clés, procédures...

» SQLForeignKeys, SQLPrimaryKeys, SQLProcedureColumns,SQLProcedures, SQLTablePriviledges

Appel du traducteur DLL» SQLDriverToDataSource, SQLDataSourceToDriver

Page 39: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

39

ODBC SQL : Niveau Grammaire Minimale

CREATE TABLE, DROP TABLE Simple SELECT, INSERT, UPDATE

SEARCHED, DELETE SEARCHED Expressions simples

– (A > B+C) Types de données

– CHAR, VARCHAR, LONG VARCHAR

Page 40: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

40

ODBC SQL : Niveau Grammaire Core

Grammaire Minimale DDL

– ALTER TABLE, CREATE INDEX, DROP INDEX, CREATE VIEW, DROP VIEW, GRANT & REVOKE

DML– SELECT entier

» sous-requêtes et fonctions agrégats de SQL Access

Types de données– DECIMAL, NUMERIC, SMALLINT, INTEGER, REAL,

FLOAT, DOUBLE PRECISION

Page 41: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

41

ODBC SQL : Niveau Grammaire Etendue

Grammaire Minimale DML

– outer joins,

– UPDATE, DELETE positionnées

– SELECT FOR UPDATE

– Unions Types de données

BIT, TINYINT, BIGINT, BINARY, VARBINARY, LONG VARBINARY, DATE, TIME, TIMESTAMP

Page 42: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

42

ODBCConception d'un driver

Les fonctions de ODBC (API & SQL) sont prises en charge– par le Gestionnaire

– par le driver» surtout la conversion de SQL et de représentation de données

Les drivers ne sont pas en principe fournis par Microsoft

Plusieurs vendeurs peuvent proposer un driver vers une même source, p.e. Sybase

Page 43: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

43

ODBCConception d'un driver

Les drivers vers une même source peuvent différer en– niveau de conformité– performances

les différences en performances peuvent résulter de– stratégie de réception de tuples

» sur demande ou "read-ahead"

» existence et taille du cache pour "read-ahead" ou une copie d'une table

– optimisation locale de requêtes» jointures internes et externes

Page 44: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

44

ODBCLimitations de V2

Une connection per SGBD– mais une application peut ouvrir plusieurs connections

simultanément

Ordres SQL-ODBC sont monobase– sauf les "passe-through" vers un SGMB

Requêtes MBD doivent être décomposées par le système local– l'idée peu performante

» connections multiples

» jointures MBD

Absence de 2PC

Page 45: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

45

ODBCPour en savoir +

ODBC 2.0 Programmer's Reference and SDK Guide. Microsoft Press, 900. $25

Geiger, K. Inside ODBC.Microsoft Press, 482 & CD-ROM. $39.95

Page 46: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

46

Autres protocoles notables

OLE & DDE– de Microsoft– Permettent d'échanger les données entre un

SGBD et les applications externes» tableur, traitement de texte, gestionnaire d'images

CORBA– tentative de standard multicompagnie– orienté l'échange distribué des objets

Page 47: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

47

DCE

Distributed Computing Environment Un ensemble de services supportes par les

principaux constructeurs Tout particulièrement

– SGF distribué– Les serveurs de temps unique

DCE sera probablement largement appliqué

Page 48: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

48

DCE Reference Architecture

File service

Timeservice

Directory service

Securityservice

RPC &authentication

DCE Threads

Host Operating system and networking

Hardware

Page 49: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

49

DCE Reference Architecture

Les DCE services s'utilisent en interne– Directory Service (DS) utilise RPC pour la

communication entre les serveurs– RPC utilise DS pour connaître la destination d'un

appel– Time Service (TS) utilise les Security Service (SS)

pour déterminer qui peut régler une horloge– SS utilise TS pour donner les permissions à courte

terme ("short life-time tickets")

Page 50: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

50

DCE Reference Architecture

Les machines, usagers, fichiers et autres ressources sont groupés en "Cells" selon

– But fonctionnel

– Sécurité

– Performance» Géographie

– Administration» choix de Cell Administrator

Cell peut correspondre à une multibase

Ordinateur

Chaussure

Cellules organisées par produit

Page 51: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

51

DCE Distributed Time Service

Maintient la synchronisation des horloges Basé sur les Time Servers qui veuillent sur

– la synchronisation mutuelle des horloges

– la synchronisation avec le temps réel

Offre 33 fonctions (library calls) aux applications

Le modèle de temps – temps à intervalle

» quelle heure est-il ? entre 9:30 et 9:31

– représenté sur 64 bits

– pas d'ordre total» problème pour les dates de valeur

Page 52: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

52

DCE Distributed Time Format

An

née

Moi

s

Jou

rH

eure

Min

.S

ec, (

pré

c. d

e 1

mse

c.

Dif

f. /

GM

T

Ind

ic. d

'imp

réci

sion

Err

eur

max

(en

sec

.)

1995 -11 -02-14:23:43.123 - 01:00 I 003.600

International Standard 8601 pour Universal Coordinated Time (UTC)

Page 53: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

53

DCE Time Adjustement Algorithm

Time Clerks (TC)– démons sur les machines-client

Time Servers (TS)– démons en charge de gérer la base de UTC

» locaux (dans les Cells)

» globaux avec peut-être une interface vers les sources exterieures

de UTC

– ondes hertziennes diffusées dans les pays industriels

Page 54: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

54

DCE Time Clerk Synchronization

Contacte tous les TS sur le LAN ou dans la Cell

Delete toute réponse sans intersection avec une autre

Calcule l'intersection max du reste

Prend la valeur du milieu comme nouveau UTC

Fait une correction graduelle» p.e. < 5 msec. par tick d'horloge

UTC1

UTC2

UTC3

UTC4

UTC

UTC client

Page 55: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

55

DCE Directory Service

Deux types de répertoires & services– Cell Directory Service (CDS)

– Global Directory Service (GDS)» schéma de nommage X500

Services auxiliaires– Domain Name System (DNS)

» utilisé par GDS schéma de nommage Internet

– Global Directory Agent» utilisé par CDS pour localiser les noms

CDS

GDA

Cell

GDA

CDS

Cell

DNS

GDS

Page 56: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

56

DCE File Service

Deux partie conceptuelles– FMS local sur chaque noeud

» dit Episode» une modernisation de FMS de Unix

– FMS global» extension de AFS » indépendance de localisation dans une Cell» duplication possible d'un fichier entre les Cells» nommage DCE» notion de client et de serveur

Page 57: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

57

DCE Security Service

Composantes– Authentication Server (AS)

» donne des tickets

– Privilege Server (PS)

» issue des privilèges d'accès et d'execution

Privilege Attribute Certificates

» exigés pour execs. RPC

– Login Server (LS)

» gère les connections et vérifie les tickets et les privilèges

DCEClient

AS

PS

LS

1

2

3

Page 58: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

58

DCEPour en savoir +

Tanenbaum, A. Distributed Operating Systems. Prentice Hall, 1994, 614. $57

Page 59: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

59

Conclusion

Manipulations multibases - parmi les plus importantes directions R & D dans les SGBDs

Autres mots-clés:– Interopérabilité– Intégration– Bases Réparties Hétérogènes

Encore beaucoup à apprendre et à faire

Page 60: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

60

Exercices Voir tous ceux déjà dans le texte Est-ce que cette requête est une transaction ACID ?

Use Banks vital cicUpdate cl*set street = 'Charles de Gaulle"where street = 'Etoile‘

Proposez un exemple de requête multibase où le modèle ACID convient et un il il ne convient pas En quoi consiste le blocage d’un participant au 2PC ? A quoi sert un protocole de terminaison si on ajoute un au 2PC standard ? Proposez un protocole de terminaison Prouvez qu’il n’y a pas de protocole de terminaison qui éviterait à coup sûr le blocage d’un

participant. Prouvez que le protocole de dates de valeur est libre de verrou mortel. A quoi sert ODBC ? L’utilité de fonctions API par rapport aux celles dites SQL de ODBC Comment pourrait-on appeler autrement les drivers CrossAccess ? Comment la DCE gère la base de temps globale ?

Page 61: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr

FIN

Page 62: 1 Manipulations multibases et distribuées Partie 3 Witold Litwin Witold.Litwin@dauphine.fr