Académique Documents
Professionnel Documents
Culture Documents
BDR Exam 2007corrige PDF
BDR Exam 2007corrige PDF
Prnom :
page 1
Universit Pierre et Marie Curie - Paris 6 - UFR 922 - Master d'informatique (SAR)
3 pts
Question 1. Dcrivez laide dun schma et de quelques phrases le principe de larchitecture hybride
utilise dans les bases de donnes parallles.
architecture hybride
Combinaison de systmes mmoire partage et de systmes sans partage : interconnection (sans partage) de
systmes mmoire partage.
Mmoire partage : tous les processeurs partagent le disque et la mmoire
aucun partage : les diffrents noeuds sont relis par un rseau dinterconnexion. Chaque processeur a un accs
exclusif la mmoire et au disque (idem BD rparties).
Question 2. Citez les trois techniques de partitionnement utilises dans les bases de donnes parallles,
et dcrivez brivement en quoi elles consistent.
Round-robin : le ime n-uplet insr dans la relation est stock sur le disque i mod n
Partitionnement par hachage (hash partitioning) : Choisir un ou plusieurs attributs comme attributs de
partitionnement
Appliquer une fonction de hachage (renvoyant un entier de 0 n-1) ces attributs
Stocker le n-uplet sur le disque correspondant au rsultat de la fonction de hachage
Partitionnement par intervalles (range partitionning) : rpartit les n-uplets en fonction des intervalles de
valeurs dun attribut
page 2
Partage de charge
distribution de transactions sur les serveurs
Support de fichiers et bases de donnes htrognes
API standardises
Exercice 2 : Pannes
2 pts
Transactions actives :
Rponse :
Pages sales : P1, P2, P3, P4
Transactions actives : T3, T4 (T2 annule, T1 termine)
Question 2. Dtaillez les actions de lalgorithme REDO, puis celles de lalgorithme UNDO, en prcisant lordre
de parcours du journal.
Actions de lalgorithme REDO :
page 3
Rponse :
REDO : on part de lenregistrement 1, et on fait, dans lordre :
Refaire les modifications de T1 : Write (P1), Write(P2), write (P5)
UNDO: on part du dernier enregistrement, et on remonte dans le journal, en faisant les oprations suivantes :
Dfaire T3 : write (P3)
Dfaire T4 : write (P4)
Dfaire T2 : write(P1)
Dfaire T3 : write(P2)
Dfaire T2 : write(P3)
Question 3 On suppose quune panne se produit pendant lalgorithme UNDO. Que risque-t-on ? Comment se
prmunir de ces risques ?
Rponse : on risque davoir une base incohrente. Pour se prmunir, on ajoute les oprations de lalgorithme
UNDO au journal, en les identifiant de telle faon quelles ne soient pas appliques deux fois (on ne redfait pas
une action UNDO)
5 pts
Question 1. Trois universits parisiennes (Jussieu, Sorbonne, Dauphine) ont dcid de mutualiser leurs
bibliothques et leur service de prts, afin de permettre lensemble des tudiants demprunter des
ouvrages dans toutes les bibliothques des universits participantes. Par exemple, un tudiant de
Jussieu pourra emprunter des ouvrages la bibliothque de la Sorbonne.
La gestion commune des bibliothques et des emprunts est effectue par une base de donnes rpartie,
dont le schma global est le suivant :
EMPLOYE (Id_pers, nom, adresse, statut, affectation)
Lattribut affectation dsigne ici la bibliothque o travaille lemploy.
ETUDIANT (Id_etu, nom, adresse, universit, cursus, nb_emprunts)
Lattribut universit indique luniversit o est inscrit ltudiant.
OUVRAGES (Id_ouv, titre, diteur, anne, domaine, stock, site)
Lattribut site indique la bibliothque qui gre cet ouvrage. Lattribut domaine permet de classer
les ouvrages en catgories (physique, maths, informatique, mdecine, etc.). Lattribut stock
dsigne le nombre douvrages restant disponibles au prt.
AUTEURS (Id_ouv, nom_auteur)
PRETS (Id_ouv, Id_etu, date_emprunt, date_retour)
La gestion de cette application sappuie sur les hypothses suivantes :
page 4
un tudiant est inscrit dans une seule universit, mais peut emprunter dans toutes les
bibliothques.
un ouvrage emprunt dans une bibliothque est rendu dans la mme bibliothque.
Le champ nb_emprunts de la relation ETUDIANT est utilis pour limiter le nombre douvrages
emprunts simultanment par un tudiant sur lensemble des bibliothques. Il est mis jour
lors de chaque emprunt et chaque retour, quelle que soit la bibliothque demprunt.
Les relations globales sont fragmentes et rparties sur les diffrents sites.
Donner la dfinition des diffrents fragments en utilisant les oprateurs de lalgbre relationnelle ainsi
que le schma dallocation des fragments.
Rponse :
- Fragmentation horizontale primaire de EMPLOYE en fonction de la valeur de l'attribut affectation:
EMPLOYE jussieu = Id_pers, nom, adresse, statut ( affectation = "jussieu" (EMPLOYE ))
EMPLOYE sorbonne = Id_pers, nom, adresse, statut ( affectation = "sorbonne" (EMPLOYE ))
EMPLOYE dauphine = Id_pers, nom, adresse, statut ( affectation = "dauphine" (EMPLOYE ))
Allocation : Un fragment EMPLOYEi est sur le site i.
Allocation : ETUDIANT bibli est dupliqu sur les trois sites. Chaque mj est rpercute sur les rpliques, de
faon toujours avoir le nb_emprunts global.
ETUDIANT univ = id_etu, nom, adresse, universit, cursus (ETUDIANT)
page 5
OUVRAGES jussieu
OUVRAGES sorbonne
OUVRAGES dauphine
OUVRAGES jussieu
PRETSsorbonne = PRETS
OUVRAGES sorbonne
OUVRAGES dauphine
Question 2. Donnez la dfinition dune fragmentation correcte. Montrez que la fragmentation que
vous proposez pour la relation ETUDIANT est correcte.
Rponse :
Une fragmentation est correcte si i) tous les n-uplets sont stocks et ii) la reconstruction permet de retrouver
exactement tous les n-uplets de la relation dorigine.
Pour ETUDIANT :
La premire tape de fragmentation est une fragmentation verticale. La clef se trouve dans les deux fragments,
et lunion des attributs projets comprend tous les attributs de la relation dorigine. Cette premire tape est
correcte.
page 6
La deuxime tape est une fragmentation horizontale, partir dun des fragments. Le critre de rpartition est la
valeur de lattribut universit. Dans la relation dorigine, cet attribut prend uniquement les valeurs jussieu ,
sorbonne et dauphine . La rpartition se fait selon ces trois critres, tous les n-uplets de la relation sont
donc affects lune des trois relations. La dcomposition est donc correcte.
(EMPLOYEi
Ti )
ETUDIANTuniv = (ETUDIANTi Ri )
ETUDIANT = ETUDIANT bibli
ETUDIANTuniv