jeudi 28 janvier 2016

Interrogation SGBD (COURS) avac solution



Question 1

a)      Quelle est la différence entre un ordonnancement correct et un ordonnancement sérialisable?

   Solution:     
           La correction d’un ordonnancement est une condition nécessaire pour la sérialisabilité mais elle n’est pas suffisante. Donc, un ordonnancement sérialisable est correct, mais le contraire n’est pas forcément vrai. De plus, la sérialisabilité s’intéresse au résultat d’exécution ainsi que la construction (structure) de l’ordonnancement tandis que la correction s’intéresse uniquement au résultat obtenu.

b)      Donner le principe de la sérialisation par verrouillage? Quels sont ses avantages? Ses inconvénients?

         Solution:     
           La sérialisation par verrouillage consiste à réserver l’accès à une donnée aux seules transactions qui l’ont demandée et dont le scheduler a donné un avis favorable. Une transaction ayant obtenu un avis favorable verrouille la donnée, par un verrou partagé si elle veut la lire ou un verrou exclusif si elle veut la modifier. Le scheduler ne pourra donner un avis favorable à une demande de verrou sur une donnée que dans les cas suivants :
La donnée est libre.
La donnée est verrouillée par un verrou partagé et que la transaction demandant l’accès veut lire cette donnée.
Avantages

§ Eviter les problèmes d’accès concurrents (mise à jour perdue, dépendance non valide, analyse incohérente)
§ Garantir l’exclusion mutuelle
§ La sérialisabilité peut être prouvée en utilisant le protocole V2P

Inconvénients
§ Verrous motels.

c)       Quelle est la caractéristique des transactions qui sera violée lorsque le scheduler opte po ur une exécution entrelacée de transaction?

Solution:  
Une exécution entrelacée de transactions affectera la caractéristique d’isolation des transactions. 

Question 2

a)       Décrire le cycle de vie d'une transaction?
Solution:  
 Cycle de vie d’une transaction :


b)      Quel est l'élément central dans la récupération de données? Comment il est alimenté?
Solution:   L’élément central dans la récupération des données est le journal de transaction. Il est alimenté par le gestionnaire de reprise à chaque exécution d’action dans une transaction. Il contient les informations suivantes : début des transactions, les actions exécutées, les images avant et après, les points de contrôle, les opérations d’annulation et les opérations commit.


c)       Pourquoi existe-t-il deux copies de cet élément, une en MS et une en MC? 
Solution:   Le journal est manipulé au niveau de la MC. Une copie se trouve en MS, elle permet de matérialiser les modifications effectuées dans la version se trouvant en M. Il est important d’avoir la version en MS pour pouvoir le charger lorsqu’une panne survient. En effet, lorsqu’une panne arrive, la MC peut se vider (problème de courant, arrêt brusque de l’application ou du SGBD), dans ce cas le système charge la version en MS pour trouver les traces d’exécution des transactions.







0 commentaires:

Enregistrer un commentaire