CONTROLE DE CONCURRENCE
Soit une base composée de 4 granules A, B, C, D et une exécution de
6 transactions T1 à T6. Les accès suivants ont été réalisés sur les
granules (Ei signifie écriture par la transaction i et Lj lecture par la
transaction j du granule indiqué) :
A : E2 E3 L5
B : L2 L4 L1
C : E5 L1 L3 E4
D : L6 L2 E3
Question 1 :
Dessiner le graphe de précédence. Que peut-on en conclure ?
Question 2 :
On suppose que les demandes se font dans l’ordre global suivant :
E2(A) L2(B) L6(D) E5(C) E3(A) L5(A) L1(C) L2(D) L3(C) E4(C) E3(D)
L4(B) L1(B)
Aucune transaction n'a relâché de verrous. L'algorithme utilisé est le
verrouillage deux phases. Donnez le graphe d'attente. Que se passe-
t-il ?
Question 3 :
On rappelle que pour l’algorithme d’estampillage multiversion, les
accès doivent être effectués dans l’ordre des estampilles des
transactions, saufs les lectures qui peuvent se produire en retard.
Une lecture en retard obtient la version qu’elle aurait lire si elle
était arrivée à son tour. Les écritures en retard provoquent par contre
un abandon de transaction.
Toujours avec l’ordre des accès de Q2, que se passe-t-il en
estampillage multiversion ?
Question 4 :
Pour gérer le multiversion on suppose que l’on dispose d’une table en
mémoire pouvant contenir 100.000 versions avec les estampilles
correspondantes (pour l’ensemble des granules). De plus on conserve
sur disque la dernière version produite de chaque granule.
On se propose de modifier l’algorithme d’estampillage multiversion de
la façon suivante : chaque nouvelle version d’un granule mis à jour
est écrite sur disque tandis que la version précédente est recopiée
dans la table en mémoire. Cette table est gérée comme une file
circulaire : chaque nouvelle version entrée chasse la version la plus
ancienne (tous granules confondus). Lors d’une lecture on recherche
dans la table (ou sur disque) la version nécessaire si elle est
disponible. Une lecture peut donc échouer et conduire à un abandon.
Donnez en pseudo-code les algorithmes LIRE et ÉCRIRE
correspondants.
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !