Concurrence

5031 mots 21 pages
LBD - C. Vangenot

13 avril 2005

Le problème

Ingénierie des bases de données
Concurrence
Verrouillage Estampillage

Nécessité d'exécuter les programmes et requêtes de façon concurrente Garantir que l’exécution simultanée de plusieurs programmes se fait correctement
Cohérence de la base de données Exécution correcte des programmes

Exemples de contextes hautement concurrentiels: annuaires téléphoniques (accès en lecture) systèmes de réservation de billets (lecture et mise à jour)

2

Programmes

Transactions

Trois problèmes à éviter
(1) Perte de mise à jour temps t1 t2 t3 t4 programme P1 Lire A Lire A Ecrire A Ecrire A La mise à jour faite par P1 est perdue
3 4

Transaction = unité de programme exécutée sur SGBD ordre sql = une transaction

programme P2

Programme (PL-SQL par ex.)
Début Transaction

Accès à la base de données (lectures, écritures) Calculs en mémoire centrale
Fin Transaction : COMMIT ou ROLLBACK

Commit : exécution correcte Rollback : exécution incorrecte

validation effacement

Autre exemple de problème à éviter
(2) Données fantômes temps t1 t2 t3 t4 programme P1 Lire A Ecrire A Lire A Rollback P2 voit une valeur de A qui n’existe pas
5

Autre exemple de problème à éviter
(3) analyse incohérente temps t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 programme P1 Lire A sum:=A Lire B sum:=sum+B programme P2 t1 Sum 0 A 40 B 50 C 30 t2 Sum 40 A 40 B 50 C 30 t4 Sum 90 A 40 B 50 C 30

programme P2

Lire C Lire A Transférer 10 de C vers A t7 Sum 90 A 50 B 50 C 20 COMMIT Lire C sum:=sum+C !! Sum aurait dû être = à 120 t10 Sum 110 A 50 B 50 C 20
6

Cours Ingénierie des bases de données

1

LBD - C. Vangenot

13 avril 2005

Programmes
Début Transaction

Transactions

Propriétés des transactions : ACID
Atomicité
opérations : tout ou rien

Transaction = unité de programme exécutée sur SGBD Accès à la base de données (lectures, écritures) Calculs en mémoire centrale Fin Transaction : COMMIT ou

en relation

  • Contrefaçon
    268 mots | 2 pages
  • Contrefacon
    457 mots | 2 pages
  • Contrefacon
    2557 mots | 11 pages
  • Contrefaçon
    607 mots | 3 pages
  • Contrefacon
    307 mots | 2 pages
  • Concurrence
    660 mots | 3 pages
  • Contrefaçon
    1170 mots | 5 pages
  • Concurrence
    309 mots | 2 pages
  • Contrefaçon
    508 mots | 3 pages
  • Contrefacon
    293 mots | 2 pages
  • Contrefacon
    256 mots | 2 pages
  • Contrefaçon
    1223 mots | 5 pages
  • Contrefacon
    1572 mots | 7 pages
  • Dissert du néant
    1869 mots | 8 pages
  • La Concurrence
    1190 mots | 5 pages