Vous êtes sur la page 1sur 75



Bases de Donnes Rparties


Master Professionnel d'Informatique

2009/2010

Mbaye SENE
Dpartement de Mathmatiques-Informatique

PLAN

1. Introdu tion
2. Intrt, di ults des BDR; Domaines onnexes
3. Ar hite ture des BDR
4. Modes de rpartitions des donnes
Partitionnement horizontal/verti al
Copie, opie et partitionnement
Mthode des fa teurs d'anit

5. Optimisation de requtes dans le as rparti


6. Transa tions et on urren e en environnement rparti
Rappels: transa tion et on urren e en environnement entralis
Di ult dans le as rparti
Te hniques/Proto oles utiliss
Master d'Informatique
Anne 2009/2010

B.D.R  1/66
M. Sene  Dpartement de Maths/Informatique

Questions prliminaires

Base de donne /Systme de Gestions de Base de Donnes (SGBD)?


S hma d'une base de donnes /Instan e d'une base de donnes ?
Constituants d'un SGBD ?

Master d'Informatique
Anne 2009/2010

B.D.R  2/66
M. Sene  Dpartement de Maths/Informatique

Quelques exemples de rponses

Une base de donnes est une olle tion d'informations ou de donnes qui

existent sur une longue priode; es donnes d rivant les a tivits d'une ou de
plusieurs organisations.

Un SGBD est un ensemble de logi iels systmes permettant aux utilisateurs

d'insrer, de modier et de re her her des donnes sp iques dans une grande
masse d'informations partage par de multiples utilisateurs.
Le s hma d'une base de donnes est la des ription totale des donnes de la

base, il orrespond un ensemble de dnitions exprimes par un langage de


des ription de donnes, DDL
L'instan e d'une base de donnes est la olle tion d'information sto ke dans

ette base un instant donn.

Le SGBD est onstitu de systme de gestion de  hiers, du

gestionnaire de requtes et du gestionnaire de transa tions.


Master d'Informatique
Anne 2009/2010

B.D.R  3/66
M. Sene  Dpartement de Maths/Informatique

Rappels et Dnitions

BDR: Ensemble de bases de donnes gres par des sites dirents

et apparaissant l'utilisateur omme une base unique.

NB: Comme toute base de donne, une BDR possde un s hma appel s hma
global qui permet de dnir l'ensemble des types de donnes de la base.
D'autres dnitions omplmentaires
BD interoprables: BD apable d' hanger des donnes en omprenant

mutuellement e qu'elles reprsentent.

Multibase: Plusieurs bases de donnes htrognes apables d'interoprer

ave une appli ation via un language ommun (sans modle ommun).

BD fdres: Plusieurs bases de donnes htrognes a des omme une

seule via une vue ommune (un modle ommun).


Master d'Informatique
Anne 2009/2010

B.D.R  4/66
M. Sene  Dpartement de Maths/Informatique

Rappels et Dnitions

Pour grer une BDR, un faut un Systme de Gestion de Base de Donne


Rpartie (SGBDR): il a he aux appli ations l'existen e de multiples bases.
SGBDR: Systme qui gre des olle tions de BD logiquement relies,

distribues sur un rseau, en fournissant un m anisme d'a s qui rend la


rpartition transparente aux utilisateurs.
Client de SGBDR: Appli ations qui a dent aux informations distribues

par les interfa es du SGBDR.

Serveur de SGBDR: SGBD grant une base de donnes lo ale intgre dans

une base de donnes rpartie.

Site ou Noeud de SGBDR: Cal ulateur dans le rseau parti ipant la

gestion d'une base de donnes rpartie.


Master d'Informatique
Anne 2009/2010

B.D.R  5/66
M. Sene  Dpartement de Maths/Informatique

Con eption

Con eption as endante

Base de donnes
rpartie

B. D 1

Master d'Informatique
Anne 2009/2010

B. D 2

B. D 3

B.D.R  6/66
M. Sene  Dpartement de Maths/Informatique

Con eption

Con eption des endante: partir d'un s hma global, obtenir des

s hmas lo aux

B.D.R globale
(schma global)

B.D 1
(schma local)

Master d'Informatique
Anne 2009/2010

B.D 2
(schma local)

B.D n
(schma local)

B.D.R  7/66
M. Sene  Dpartement de Maths/Informatique

Paramtres onsidrer

Cot (en temps) des ommuni ations: taille des messages, goulots du

rseau, type de rseau (LAN, MAN, WAN), mode de ommuni ation


(point--point, diusion ...)

Fiabilit: frquen e de pannes des sites ou des liaisons utilises


A essibilit aux donnes: possibilit d'a s aux donnes en dpit des

pannes de sites/liaisons
dpend de la topologie du rseau et de la lo alisation des donnes

Master d'Informatique
Anne 2009/2010

B.D.R  8/66
M. Sene  Dpartement de Maths/Informatique

Pourquoi les BDR ?

Appli ations naturellement rparties

 Tl ommuni ations
 Appli ations ritiques en temps de rponse: rservation arienne,
systme ban aire
volution te hnologique: rseaux, BDR, puissan e des ma hines ...
Vulnrabilit des systmes entraliss
Souplesse l'volution (ajout de priphriques, modi ation de

onguration et ...)

Ide: une BD haque lieu d'o


utilisateurs lo aux
utilisateurs globaux
Master d'Informatique
Anne 2009/2010

B.D.R  9/66
M. Sene  Dpartement de Maths/Informatique

Intrts des BDR

Intrt
Coopration: hange de donnes, ex ution lo ale d'une partie de

transa tion globale ...

Vue intgre des donnes: l'utilisateur ignore la lo alisation


Disponibilit: plusieurs donnes identiques sur plusieurs sites
Performan e: temps d'a s aux donnes, les d'attente (dans le

rseau, dans les serveurs ...)

Rsistan e aux pannes: moins vulnrable que le systme entralis

Master d'Informatique
Anne 2009/2010

B.D.R  10/66
M. Sene  Dpartement de Maths/Informatique

Di ults et Problmes des BDR

Di ults et problmes


Dveloppement logi iel:

 plus di ile mettre en oeuvre (bugs, virus)


 di ults d'assurer des algorithmes orre tes pour des sites
travaillant en parallle ...
Complexit: intgration des aspe ts rseaux (introdu tion de

proto oles), gestion de la ohren e des donnes plus di ile

Augmentation de l'overload (sur harge)

 sur harge du rseau d aux hanges de messages


 traitements supplmentaires: pour la oordination entre sites,
garder tra e de la rpartition des donnes
Master d'Informatique
Anne 2009/2010

B.D.R  11/66
M. Sene  Dpartement de Maths/Informatique

Domaines onnexes

Con eption des BDR

 Partionnement Fragmentation
 Rpli ation Distribution
Ex ution des requtes rparties

 re her he d'une stratgie d'ex ution au moindre ot


 en tenant ompte de la dupli ation, du rseau et de la disponibilit
Gestionnaire de annuaires distribus: l'annuaire (repertoire) ontient la

des ription et la lo alisation des objets de la base, elle peut tre


global/lo al, entralis/distribue

Contrle de on urren e rpartie: mise ne oeuvre soit ave les verrous soit

ave les estampilles

Gestion d'interblo age rparti: gestion entralise, hirar hique ...


Fiabilit des SGBD: en plus de la onsistan e de la base, ils doivent proposer
Master d'Informatique
Anne 2009/2010

B.D.R  12/66
M. Sene  Dpartement de Maths/Informatique

Domaines onnexes

des m anismes de dte tion de dfaillan e, de reprise aprs in ident


Htrognit des bases

 Au niveau de la stru ture logique (modle des donnes)


 Au niveau des m anismes d'a s aux donnes (language de donne)

Master d'Informatique
Anne 2009/2010

B.D.R  13/66
M. Sene  Dpartement de Maths/Informatique

Relation entre les domaines onnexes

Gestion des
annuaires

Excution de
requtes rparties

Conception
des BDR

Fiabilit

Contrle de
concurrence

Gestion des
interblocages

Master d'Informatique
Anne 2009/2010

B.D.R  14/66
M. Sene  Dpartement de Maths/Informatique

Ar hite ture

Organisation des s hmas


s hma lo al: S hma d rivant les donnes d'une BD lo ale gre

par le SGBD lo al.

s hma export: S hma d rivant les donnes exports par un site

vers les autres sites lients.

s hma import: S hma export reu par un site lient.


s hma global: S hma onstitu sur un site lient par intgration

globale des s hmas imports d rivant la BDR vue depuis e site.

Vue intgre: S hma d rivant dans le modle du SGBDR les

donnes de la BDR a de par une appli ation.

Master d'Informatique
Anne 2009/2010

B.D.R  15/66
M. Sene  Dpartement de Maths/Informatique

Ar hite ture

Vue intgre

Vue intgre

Schma global

schma export/import

schma local

schma export/import

schma local

Figure 1: Dirents niveaux de s hmas


Master d'Informatique
Anne 2009/2010

B.D.R  16/66
M. Sene  Dpartement de Maths/Informatique

Ar hite ture de rfren e d'un SGBDR


Vue intgre

Niveau
interoprable

Gestion des
objets intgrs

Client
Schma import

Accs objets

Niveau

distants

Communication
Accs objets
locaux
Schma export
Adaptateur
local

Serveur

Niveau local
SGBD X

Schma local

Figure 2: Ar hite ture type d'un SGBDR


Master d'Informatique
Anne 2009/2010

B.D.R  17/66
M. Sene  Dpartement de Maths/Informatique

Ar hite ture de rfren e d'un SGBDR

Client/Serveur
Multi lients/multiserveurs
Systme

Master d'Informatique
Anne 2009/2010

Middelware

B.D.R  18/66
M. Sene  Dpartement de Maths/Informatique

Ar hite ture
CLIENT
Site5

Donnes techniques

Systme lgataire

Site4

Donnes de
gestion:
commande,
factures etc...

Oprations des produits

Rseau de
communication

Site1

Donnes textuelles
Site2
Description des produits

Donnes gographiques
Site3

Serveur

Localisation des clients

Figure 3: Exemple de BD intgrer


Master d'Informatique
Anne 2009/2010

B.D.R  19/66
M. Sene  Dpartement de Maths/Informatique

Ar hite ture (3/3)

Systme de Gestion de Bases de Donnes Rparties


Plusieurs sites inter onne ts sur un rseau
Sur haque site
Gestion des donnes lo ales
A s des donnes des autres sites
Proprits du systme
Indpendan e des donnes

- D oupages des donnes en fragments


- Gestion des opies ou rpliques
Atomi it des transa tions: validation d'une transa tion par tous
les sites tou hs ou par au un

Master d'Informatique
Anne 2009/2010

B.D.R  20/66
M. Sene  Dpartement de Maths/Informatique

Quatrime partie

Modes de rpartitions des donnes

Master d'Informatique
Anne 2009/2010

B.D.R  21/66
M. Sene  Dpartement de Maths/Informatique

Partitionnement horizontal (1/2)

haque fragment ri = Qi (r) est lo alis sur le site i


Re onstru tion de l'instan e r = i (ri )

Master d'Informatique
Anne 2009/2010

B.D.R  22/66
M. Sene  Dpartement de Maths/Informatique

Partitionnement horizontal (2/2)

Soit la table Arti le(refarti le,


Rfren e

Designation, PrixFournisseur, VilleFournisseur)

Dsignation

Prix F.

Ville F.

0001

Portable Compaq Armada 1573D

10245,20

Paris

0010

Tlphone portable Eri sson T10

1290,00

Paris

0150

Montre Shivas quartz

350,90

Turin

0012

Tlphone portable Nokia

779,50

Tokyo

1000

Gordon Dry gin 33 l

65,25

Londre

1500

Disque dur 5 Go IBM

978,15

Londre

Partition horizontale de Arti le suivant la ville (algbre relat. et SQL)?


En 3 partitions vriant: P rixF 100, 100 < P rixF 1000 et
P rixF 1000 (algbre relat. et SQL) ?
Master d'Informatique
Anne 2009/2010

B.D.R  23/66
M. Sene  Dpartement de Maths/Informatique

Partitionnement verti al (1/2)

haque fragment ri =

Ri (r)

est lo alis sur le site i

Re onstru tion de l'instan e r = i (ri )

Master d'Informatique
Anne 2009/2010

B.D.R  24/66
M. Sene  Dpartement de Maths/Informatique

Partitionnement verti al (2/2)

On onsidre la table Arti le pr dente


Partitionner la verti alement (algbre relationnelle) en deux tables:
Arti le_F: regroupant des info sur l'arti le et le fournisseur
Arti le_P: pour les info sur l'arti le et le prix

Master d'Informatique
Anne 2009/2010

B.D.R  25/66
M. Sene  Dpartement de Maths/Informatique

Copies (1/6)

Dupli ation des objets sur plusieurs sites (plusieurs opies d'une mme
relation ou d'un mme fragment sur es sites)
Intrts
disponibilits des objets (malgr les dfaillan es)
a essibilit (meilleures performan es ar lo alises sur les sites o

leurs a s sont les plus frquents)

travail en mode d onne t possible(ATTENTION aux MAJ)


In onvnients
Mise jour: syn hrone, asyn hrone
tra rseau supplmentaire
di ult maintenir la ohren e des opies
Master d'Informatique
Anne 2009/2010

B.D.R  26/66
M. Sene  Dpartement de Maths/Informatique

Copies (2/6)

A s aux objets

Le grant de dupli ation transforme les oprations faites par l'appli ation
sur un objet logique xi , en des oprations ee tues sur des objets
physiques (les opies de xi ).
Le grant de dupli ation dispose d'une table de lo alisation des opies
reprsentant l'asso iation hobject logique, objets physiquesi
Cette table est mise jour en fon tion de la dfaillan e et de la reprise des
opies

Master d'Informatique
Anne 2009/2010

B.D.R  27/66
M. Sene  Dpartement de Maths/Informatique

Copies (2/6)

Dbut/Abandon/
Fin transaction

Grant de
transactions

Grant de
donnes

Applications

Opration sur un
objet logique
-op(x1)

Master d'Informatique
Anne 2009/2010

Validation/
Abandon

Opration sur des


objets physiques
-op(x11),op(x12)...

Grant de
duplication

x1

x2

x11

x21

x12

x22

x13

x23

B.D.R  28/66
M. Sene  Dpartement de Maths/Informatique

Figure 4: Objets logiques et physiques

Copies (3/6)

Srialisabilit une opie


L'ex ution des transa tions sur les opies d'objets doit tre quivalente

une ex ution en srie de es mmes transa tions sur des objets logiques
la notion d'ex ution logique et d'ex ution physique

Exemple: Soient deux objets x1 et x2 dont les opies sont resp. x11 , x12

pour x1 et x21 , x22 pour x2 .


On onsidre deux transa tions T1 et T2
T1 : lire1 [x1 ]lire1 [x2 ]
T2 : ecrire1 [x1 , v2 ]ecrire2 [x2 , v2 ]

Master d'Informatique
Anne 2009/2010

B.D.R  29/66
M. Sene  Dpartement de Maths/Informatique

Copies (4/6)

T1
lire[x21,v2]

lire[x11,v1]

T2

ecrire[x11,v2]

ecrire[x12,v2]

ecrire[x21,v2]

ecrire[x22,v2]

Figure E1: Excution physique

T1
lire[x2,v2]

lire[x1,v1]

T2
ecrire[x1,v2]

ecrire[x2,v2]

Figure E2: Excution logique

Master d'Informatique
Anne 2009/2010

B.D.R  30/66
M. Sene  Dpartement de Maths/Informatique

Copies (5/6)

Exemple: Proto ole opie primaire


Parmi les opies d'un objet, il en existe une qui possde un statut

parti ulier: opie primaire


Transa tion de mise jour sur la opie primaire
Mises jour rpertories sur les autres opies ( opies se ondaires)
En as de dfaillan e d'une opie primaire d'un objet, une nouvelle
opie primaire est lue parmi les opies se ondaires
Le ture sur n'importe quelle opie mais riture sur la opie
primaire

Master d'Informatique
Anne 2009/2010

B.D.R  31/66
M. Sene  Dpartement de Maths/Informatique

Copies (6/6)

Variantes

1. Tous les objets sur tous les sites


2. Tous les objets sur quelques sites
3. Quelques objets sur tous les sites
4. Combinaison de 2. et de 3.

Master d'Informatique
Anne 2009/2010

B.D.R  32/66
M. Sene  Dpartement de Maths/Informatique

Fa teur d'anit (1/4)

Dnitions

Soient D = D1 , D2 , ..., Dm : ensemble de m donnes,


S = S1 , S2 , ..., Sn : ensemble de n sites pouvant ontenir es donnes.
Une matri e relle A(m n) : frquen es des donnes aux sites.
Anit d'une donne Di
F (Di ) =

n
X

Ai,j

j=1

Anit mutuelle entre Di et Sj note F (Di , Sj ) est gale Ai,j .


Fa teur d'anit
F (Di , Sj )
AF (Di , Sj ) =
F (Di ) + F (Sj )
Master d'Informatique
Anne 2009/2010

B.D.R  33/66
M. Sene  Dpartement de Maths/Informatique

Fa teur d'anit (2/4)

Rgle de pla ement des donnes dans les sites

La donne Di sera lo alise sur le site Sj si et seulement si seulement si :


l {1..n}

et l 6= j

AF (Di , Sj ) > AF (Di , Sl ).

On her her pla er les donnes l o elles sont le plus solli ites

Attention la disponibilit

Master d'Informatique
Anne 2009/2010

B.D.R  34/66
M. Sene  Dpartement de Maths/Informatique

Fa teur d'anit (3/4)

Exemple

D/S

S1

S2

S3

S4

S5

D1

D3

5
6
6

7
4
3

3
9
8

1
10
9

8
2
12

D4

12

D2

Table 1: Frquen e d'a s des donnes aux sites


Question: Cal uler les fa teurs d'anits et pla er les donnes sur les sites
Master d'Informatique
Anne 2009/2010

B.D.R  35/66
M. Sene  Dpartement de Maths/Informatique

Fa teur d'anit (4/4)

Solution

D/S

S1

S2

S3

S4

S5

D1

0.094
0.100
0.089
0.214

0.15
0.077
0.051
0.146

0.062
0.164
0.129
0.078

0.022
0.192
0.152
0.021

0.163

D2
D3
D4

0.036
0.190
0.057

Table 2: Fa teur d'anit


D1 et D3 sur S5
D2 sur S4
D4 sur S1
Master d'Informatique
Anne 2009/2010

B.D.R  36/66
M. Sene  Dpartement de Maths/Informatique

Cinquime partie

Optimisation de requtes

Master d'Informatique
Anne 2009/2010

B.D.R  37/66
M. Sene  Dpartement de Maths/Informatique

Optimisation de requtes dans le as entralis

Rappels de quelques rgles


Commutativit des jointures et des produits artsiens:
R1F R2 = R2F R1, R1*R2=R2*R1
Cas ade des sle tions: F1 (F2 (E)) = F1 F2 (E)
Commutativit des sle tions et proje tions:
Q
Q
A1 ,A2 ,..An (F (R)) = F ( A1 ,A2 ,..An ) (Attention, dans quel as ?)
Commutativit de la sle tion et du produit artsien:
F (R1 R2) = F (R1) F (R2) (ou F (R1) R2 ou R1 F (R2))
Commutativit de la sle tion et de l'union:
S
S
F (R1 R2) = F (R1) F (R2)
asso iativit des produits artsiens: (R1 R2) R3 = R1 (R2 R3)
et ... (Voir aussi premier ours BD)
Master d'Informatique
Anne 2009/2010

B.D.R  38/66
M. Sene  Dpartement de Maths/Informatique

Exer i e prliminaire

Soit une base de donnes ban aires de s hma suivant:


Pret(NumPret, signataire, montant, type_pret)
Type_pret(type_pret, onditions, taux, des riptif)
Empreinte(NumClient, nom, prenom, adresse)
Fait_Credit(NumClient, NumPret, date)

1. On dnit une vue XCLIENT permettant d'obtenir les informations


d'un prt omportant les attributs suivants: NumClient, nom, prenom,

adresse, NumPret, montant, date, signataire

Dterminer, en algbre relationnelle, la requte dnissant XCLIENT.


2. On her he les signataires des prts signs depuis le 1/1/98:
Q

signataire (date<1/1/98 (XCLIEN T ))

Reprsenter sous forme d'arbre, la requte ainsi dnie.


3. On her he optimiser ette requte,
Master d'Informatique
Anne 2009/2010

B.D.R  39/66
M. Sene  Dpartement de Maths/Informatique

Exer i e prliminaire

a. Comment peut-on organiser la ondition de sle tion de la vue


XCLIENT
b. En utilisant les rgles, o pouvez vous pla er la sle tion date<1/1/98
. De mme, o pouvez vous pla er les sle tions dduites de a)
d. Donnez l'arbre nal

Master d'Informatique
Anne 2009/2010

B.D.R  40/66
M. Sene  Dpartement de Maths/Informatique

Optimisation de requtes dans le as rparti

Requte distribue: Requte mise par un lient dont l'ex ution


n essite l'ex ution de N sous requtes sur N serveurs ave N > 1
Transformation de la requte en oprations lo ales

 Quel fragment utiliser ?


 Quelle lo alisation (quel site) utiliser ?
Optimisation du plan d'ex ution rparti

 Temps d'a s aux donnes du disque


 Temps CPU d'ex ution des oprations en mmoire
Cot de ommuni ation pour les transferts entre sites
Master d'Informatique
Anne 2009/2010

B.D.R  41/66
M. Sene  Dpartement de Maths/Informatique

Allo ations ave ontraintes (1/3)

Obje tifs: Rpartir des  hiers (ou tables) sur des sites ayant des

ontraintes de apa it de sto kage


Soit Q une olle tion de requtes et G la base de donne globale telle que:
K

G = Li
i

Si q Q, q peut tre d ompose en direntes sous-requtes qi telles que:


K

Evaluation(q, G) = Evaluation(qi , Li )
i

on dit que la partition-allo ation ainsi opre est lo alement susante Q


(Les Li sont les fragments sto ks sur les sites Si )
Master d'Informatique
Anne 2009/2010

B.D.R  42/66
M. Sene  Dpartement de Maths/Informatique

Allo ations ave ontraintes (2/3)

Soit N le nombre de sites, un site j a une apa it Cj .


Soit M le nombre d'objets, un objet i a une taille Si
Soit T le nombre de transa tions, la frquen e de la transa tion k au site j
est note fkj
Chaque transa tion k fait nki a s l'objet i
Soit Xij qui vaut 1 si l'objet i est lo alis dans le site j et 0 dans le as
ontraire.
Soit le taux de visite Vij dni par :
Vij =

T
X

fkj .nki

k=1

Questions: exprimer les ontraintes et la fon tion optimiser


Master d'Informatique
Anne 2009/2010

B.D.R  43/66
M. Sene  Dpartement de Maths/Informatique

Allo ations ave ontraintes (3/3)

Contraintes et fon tion optimiser


Un objet est sto k dans un et un seul site
N
X

i {1 . . . M },

Xi,j = 1

j=1

La ontrainte d'espa e de sto kage


j {1 . . . N },

M
X

Xi,j .Si Cj

i=1

Minimiser le oup des a s distants, e qui revient maximiser les a s

lo aux, on doit don maximiser

j {1 . . . M },

Xij .Vij

i,j

Trouver un algo qui vous permet de pla er les objets dans les sites Si
Master d'Informatique
Anne 2009/2010

B.D.R  44/66
M. Sene  Dpartement de Maths/Informatique

Exer i e 1: partitionnement horizontal

Soient deux relations:


Employe(Nom, Adresse, Salaire, Usine)
Ma hine(NumMa hine, Type, Usine)
Employe est fragment horizontalement par usine et haque fragment Ei
est sto k lo alement sur un site Si de l'usine. La relation Ma hine est
sto ke totalement sur le site entral (Toulouse).
Proposer une bonne stratgie d'ex ution de ha une des requtes.

a. Quels sont les employs de l'usine ontenant la ma hine 1070 ?


b. Quels sont les employs des usines ontenant des ma hines de type
broyeuse ?
. Trouver toutes les ma hines de l'usine de S5
d. tablir la jointure de Employe et de Ma hine
Master d'Informatique
Anne 2009/2010

B.D.R  45/66
M. Sene  Dpartement de Maths/Informatique

Question a (1)

Requte SQL:

SELECT * FROM Employe E, Ma hine M


WHERE E.Usine=M.Usine
AND M.numMa hine=1070 ;
Algbre relationnelle:

numM achine=1070 (EU sine M )


Sn
Or E = i=1 Ei d'o l'arbre
numMachine=1070

Usine

U
E1

Master d'Informatique
Anne 2009/2010

...

Machine

En

B.D.R  46/66
M. Sene  Dpartement de Maths/Informatique

Question a (2)

numM achine=1070 (EU sine M ) ne porte que sur Ma hine; en plus on a besoin

uniquement de l'attribut Usine, d'o l'arbre nal


Usine

U
E1

...

Usine

En
numMachine=1070

Machine

Stratgie d'ex ution


Envoyer la requte

U sine (numM achine=1070 (M achine))

Toulouse puis r uprer le rsultat

au site de

Regarder quel fragment Eu orrespond l'usine rsultat et envoyer la


requte au site Su
Master d'Informatique
Anne 2009/2010

B.D.R  47/66
M. Sene  Dpartement de Maths/Informatique

Suite exer i e, Algorithme de onstru tion

Questions b, et d

... A faire ...

Constru tion des arbres algbriques dans le as rparti


Construire l'arbre d'oprateurs algbriques de la requte globale
Supprimer les fragments ne parti ipant pas la requte
En ommutant les unions et les jointures, supprimer les jointures dont

le rsultat est vide

Master d'Informatique
Anne 2009/2010

B.D.R  48/66
M. Sene  Dpartement de Maths/Informatique

Exer i e 2: partitionnement verti al

Soient deux relations:


P(CodeBarre, Nom, PrixFournisseur, Rayon)
S(CodeBarre, QuantiteEntrept, QuantiteMagasin, QuantiteCommandee,

PrisMagasin)

On suppose que P est fragment verti alement en P1 , P2 et P3 .


Q

P1 = CodeBarre, P rixF ournisseur (P )


Q
P2 = CodeBarre, Rayon (P)
Q
P3 = CodeBarre, N om (P)

1. Exprimer sous forme d'arbre, la requte globale:

Rayon (P )

2. Rduisez la requte en fon tion des fragments de la relation


Master d'Informatique
Anne 2009/2010

B.D.R  49/66
M. Sene  Dpartement de Maths/Informatique

Solution Exer i e 2

A faire

Master d'Informatique
Anne 2009/2010

B.D.R  50/66
M. Sene  Dpartement de Maths/Informatique

Exer i e 3: partitionnement hybride

Soient deux relations:


P(CodeBarre, Nom, PrixFournisseur, Rayon)
S(CodeBarre, QuantiteEntrept, QuantiteMagasin, QuantiteCommandee,

PrisMagasin)

P est fragment de manire hybride, en trois fragments P1 , P2 et P3 .


P1 =P rixF ournisseur200 [
P2 =P rixF ournisseur>200 [
Q
P3 = CodeBarre,N om (P )

CodeBarre, P rixF ournisseur (P )]

CodeBarre, P rixF ournisseur

(P)

1. Exprimer en algbre relationnelle la requte globale:


SELECT Nom FROM P WHERE PrixFournisseur=225;
2. Reprsenter la requte sous forme d'arbre que vous rduirez en
fon tion des fragments de la relation
Master d'Informatique
Anne 2009/2010

B.D.R  51/66
M. Sene  Dpartement de Maths/Informatique

Solution Exer i e 3

A faire

Master d'Informatique
Anne 2009/2010

B.D.R  52/66
M. Sene  Dpartement de Maths/Informatique

Sixime partie

Transa tions et Con urren e

Master d'Informatique
Anne 2009/2010

B.D.R  53/66
M. Sene  Dpartement de Maths/Informatique

Transa tion (1/4)

Dnitions:

Une transa tion est une squen e d'oprations sur un ensemble d'objets qui
vrie les proprits suivantes :
(A)

Atomi it: Soit une transa tion se termine orre tement, et elle a

(C)

Cohren e: Une transa tion prserve la ohren e des objets

les eets dsirs sur les objets manipuls (la transa tion est valide),
soit la transa tion est interrompue et elle n'a au un eet sur es objets
(elle est abandonne).

qu'elle manipule.

(I)

Isolation: Les eets d'une transa tion sont invisibles aux

transa tions on urrentes.

(D)

Durabilit: Les eets d'une transa tion valide sont permanents.

Master d'Informatique
Anne 2009/2010

B.D.R  54/66
M. Sene  Dpartement de Maths/Informatique

Transa tion (2/4)

Oprateurs possibles dans une transa tion


COMMIT: validation d'une transa tion, les modi ations sont rites

sur un journal pour les reprises

ABORT: retour au dbut de la transa tion


SAVE: ration d'un point de sauvegarde (permet de rduire le ot

de retour en arrire aprs une panne ou dte tion d'un inter-blo age)

BACK-UP: retour un point de sauvegarde

Un transa tion opre sur une granule (stru ture de donnes partageable,
onsidre omme une ressour e, et alloue une transa tion)
Dis uter de la taille des granules ?
Master d'Informatique
Anne 2009/2010

B.D.R  55/66
M. Sene  Dpartement de Maths/Informatique

Transa tion (3/4)

Une transa tion est dite rpartie si elle a de des objets situs sur des
sites dirents.
Les sites peuvent tre des pro essus (au sens Unix) situs sur la mme
ma hine, ou sur direntes ma hines onne tes par un rseau.
Une transa tion rpartie T peut tre ompose de plusieurs
sous-transa tions distantes Ti , ha une tant ex ute par un site Si
dirent.

Une ex ution est dite srialisable si elle est quivalente une ex ution
dans laquelle les transa tions sont ex utes de manire squentielle.
Problme de srialisation globale, d'a s on urrents, d'inter-blo ages

...

Master d'Informatique
Anne 2009/2010

B.D.R  56/66
M. Sene  Dpartement de Maths/Informatique

Transa tion (4/4)

Srialisation lo ale/globale

Un ordonnan ement de transa tions T1 , T2 , , Tn est dit globalement


srialisable si:
tous les ordonnan ements sont lo alement srialisables
toutes les transa tions apparaissent dans le mme ordre dans tous les

sites 'est--dire si:

Ti1 < Tj1 Sx Sites, Tix < Tjx

ave Ti1 sous-transa tion de Ti sur le site S1


Master d'Informatique
Anne 2009/2010

B.D.R  57/66
M. Sene  Dpartement de Maths/Informatique

Con urren es dans le as rparti

Plusieurs transa tions simultanes veulent a der aux mmes donnes.


Pertes de mise jour et In onsistan e possibles
Problmes: Pertes de mise jour

Transaction T1

Transaction T2

ai: Read X-->x1


ak: Read X-->x2
x2+1-->x2
write x2-->X

aj: x1+1-->x1
write x1-->X

Temps

Master d'Informatique
Anne 2009/2010

B.D.R  58/66
M. Sene  Dpartement de Maths/Informatique

Con urren es dans le as rparti

Problmes: In onsistan e

A=B
Transaction T1

Transaction T2

Read A-->a1
a1+1-->a1
write a1-->A
Read A-->a2
Print a2
Read B-->b2
Print b2
Read B-->b1
b1+1-->b1
Write b1-->B

Temps

Master d'Informatique
Anne 2009/2010

B.D.R  59/66
M. Sene  Dpartement de Maths/Informatique

Contrle de Con urren e rparti

Verrouillage rparti (1/2)


Une transa tion demande un verrou si elle veut a der un objet
Rel he les verrous si validation ou abandon
Proto ole utilise: Verrouillage deux phases

Dirents types de verrous:


Verrouillage deux phases entralis
Verrouillage deux phases de la opie primaire
Verrouillage majoritaire: verrouillage de la majorit des opies

Que faut il verrouiller ?


Master d'Informatique
Anne 2009/2010

B.D.R  60/66
M. Sene  Dpartement de Maths/Informatique

Contrle de Con urren e rparti

Verrouillage rparti (2/2)

Problme: Inter-blo ages

Temps

S1

S2

S3

t1

V P (T1 , x1 )

V X(T2 , y2 )

V P (T3 , z3 )

t2

V X(T1 , y1 )

V X(T2 , z2 )

t3

V X(T3 , x1 )

V X(T1 , y2 )

T3

T1

Graphe d'attente
local de S1

Master d'Informatique
Anne 2009/2010

T1

T2

Graphe d'attente
local de S2

V X(T2 , z3 )

T2

T3

Graphe d'attente
local de S3

B.D.R  61/66
M. Sene  Dpartement de Maths/Informatique

Contrle de Con urren e rparti

Solution pour dte ter les Inter-blo ages


Dte tion entralise: maintenan e d'un graphe d'attente global par un site

dte teur

Dlai de garde: aprs une attente gale e dlai, on abandonne (Attention:

Prise en ompte des dlais de transmission)

Dte tion hirar hique


Dtection des
inter-blocage entre 4 sites

S1234

S12

S1

Master d'Informatique
Anne 2009/2010

Dtection des
inter-blocage
entre 2 sites

S34

S2

S3

S4

Dtection des
inter-blocage
locaux

B.D.R  62/66
M. Sene  Dpartement de Maths/Informatique

Contrle de Con urren e rparti

Estampilles rparties (1/2)


A haque transa tion, on asso ie une estampille (date) ave laquelle elle

date ses oprations.


Ordonnan ement gr e l'uni it des estampilles
Ex ution des oprations oni tuelles dans l'ordre tabli par leurs
estampilles: Si Ti et Tj sont estampilles resp. par ti et tj Alors
ti < tj Ti Tj . Si et ordre n'est pas respe t, une transa tion est
annule (laquelle ?)
Chaque site applique le proto ole de ontrle de on urren e par
estampilles sur les transa tions qui a dent ses objets
Problme: Assurer l'ordre total des estampilles assignes aux transa tions
Master d'Informatique
Anne 2009/2010

B.D.R  63/66
M. Sene  Dpartement de Maths/Informatique

Contrle de Con urren e rparti

Estampilles rparties (2/2)

Solutions

Dsigner un site entral responsable de dlivrer les estampilles toutes

les transa tions, y omprises elles inities sur d'autres sites. (Dites
les in onvnients de ette te hniques ?)

Permettre tous les sites de dlivrer des estampilles en fon tions des

identi ateurs des sites (supposs en ordre).


L'estampille est alors une paire (Compteur-du-site, Identi ateur-Site)
o Identi ateur-site est l'horloge du site.
Les estampilles sont ordonnes suivant la premire valeur et en as
de onit, elles sont ordonnes suivant la deuxime valeur).

Master d'Informatique
Anne 2009/2010

B.D.R  64/66
M. Sene  Dpartement de Maths/Informatique

Contrle de Con urren e rparti

Certi ation rpartie

Une transa tion omprend 2 tapes:


une tape de le ture et de al ul
une tape d' riture dans la base de donnes

d'o on peut ordonner les transa tions selon les moments o elles
terminent la premire phase et ontrler que les a s oni tuels aux
granules s'ee tuent bien dans l'ordre ainsi dni ( erti ation)

Master d'Informatique
Anne 2009/2010

B.D.R  65/66
M. Sene  Dpartement de Maths/Informatique

Validation atomique rpartie: Rappels

Rappels: Une transa tion s'ex ute ompltement ou ne s'ex ute pas du
tout (tout ou rien)
Proto oles: 2PC, le 3PC
M anisme de journalisation ( entralis)
Journalisation + apa it pour ha un des parti ipants d'assurer les
proprits A.I.D de la transa tion.

Master d'Informatique
Anne 2009/2010

B.D.R  66/66
M. Sene  Dpartement de Maths/Informatique

Validation atomique rpartie: le 2PC

Prparation : le oordinateur demande tous les parti ipants leur vote en

leur envoyant un message prparer.

Vote : haque parti ipant retourne son vote aprs avoir reu le message
prparer.

Si le parti ipant ne reoit pas le message du oordinateur et


suspe te sa dfaillan e, il vote non.

D ision du oordinateur : Si l'un des votes est non ou si l'un des

parti ipants est suspe t d'tre dfaillant, le oordinateur d ide


d'abandonner la transa tion. Si tous les votes sont oui, il d ide de valider
la transa tion.

D ision du parti ipant : le parti ipant retourne un a quittement une fois la

d ision du oordinateur reu.

Terminaison de la transa tion : lorsque tous les a quittements des

parti ipants sont reus par le oordinateur, il onsidre la transa tion


omme termine en librant les ressour es alloues la transa tion.

Master d'Informatique
Anne 2009/2010

B.D.R  67/66
M. Sene  Dpartement de Maths/Informatique

Validation atomique rpartie: le 3PC (1/2)

Le 2PC satisfait les proprits:


Unanimit: tous les parti ipants prennent la mme d ision ( elle du

oordinateur)

Validit: la d ision de valider n'est prise que lorsque le oordinateur


olle te les votes oui de tous les parti ipants
Non-trivialit: Si tous votent oui et au une dfaillan e, le oordinateur
reoit les votes oui et les parti ipants d ident de valider

Problme du 2PC: Blo age ( quel niveau ? Illustrer par un


diagramme)

Master d'Informatique
Anne 2009/2010

B.D.R  68/66
M. Sene  Dpartement de Maths/Informatique

Validation atomique rpartie: le 3PC (2/2)

Solution: le 3PC 2PC + 2 ommuni ations supplmentaires


S1

S2

prpaeer

oui

(1)

(2)

S3

Master d'Informatique
Anne 2009/2010

pr-valider

(3)

asq

valider

(4)

acq

(5)

(6)

B.D.R  69/66
M. Sene  Dpartement de Maths/Informatique

FIN DU COURS

Bonne han e !!!

Master d'Informatique
Anne 2009/2010

B.D.R  70/66
M. Sene  Dpartement de Maths/Informatique

List of Slides
1 PLAN
2 Questions prliminaires
3 Quelques exemples de rponses
4 Rappels et Dnitions
5 Rappels et Dnitions
6 Con eption
7 Con eption
8 Paramtres onsidrer
9 Pourquoi les BDR ?
10 Intrts des BDR
11 Di ults et Problmes des BDR
12 Domaines onnexes
14 Relation entre les domaines onnexes
15 Ar hite ture
16 Ar hite ture
17 Ar hite ture de rfren e d'un SGBDR
19 Ar hite ture
20 Ar hite ture (3/3)
21 Quatrime partie
22 Partitionnement horizontal (1/2)
23 Partitionnement horizontal (2/2)
Master d'Informatique
Anne 2009/2010

B.D.R  71/66
M. Sene  Dpartement de Maths/Informatique

24 Partitionnement verti al (1/2)


25 Partitionnement verti al (2/2)
26 Copies (1/6)
27 Copies (2/6)
29 Copies (3/6)
30 Copies (4/6)
31 Copies (5/6)
32 Copies (6/6)
33 Fa teur d'anit (1/4)
34 Fa teur d'anit (2/4)
35 Fa teur d'anit (3/4)
36 Fa teur d'anit (4/4)
37 Cinquime partie
38 Optimisation de requtes dans le as entralis
39 Exer i e prliminaire
41 Optimisation de requtes dans le as rparti
42 Allo ations ave ontraintes (1/3)
43 Allo ations ave ontraintes (2/3)
Master d'Informatique
Anne 2009/2010

B.D.R  72/66
M. Sene  Dpartement de Maths/Informatique

44 Allo ations ave ontraintes (3/3)


45 Exer i e 1: partitionnement horizontal
46 Question a (1)
47 Question a (2)
48 Suite exer i e, Algorithme de onstru tion
49 Exer i e 2: partitionnement verti al
50 Solution Exer i e 2
51 Exer i e 3: partitionnement hybride
52 Solution Exer i e 3
53 Sixime partie
54 Transa tion (1/4)
55 Transa tion (2/4)
56 Transa tion (3/4)
57 Transa tion (4/4)
58 Con urren es dans le as rparti
60 Contrle de Con urren e rparti
61 Contrle de Con urren e rparti
62 Contrle de Con urren e rparti
Master d'Informatique
Anne 2009/2010

B.D.R  73/66
M. Sene  Dpartement de Maths/Informatique

63 Contrle de Con urren e rparti


64 Contrle de Con urren e rparti
65 Contrle de Con urren e rparti
66 Validation atomique rpartie: Rappels
67 Validation atomique rpartie: le 2PC
68 Validation atomique rpartie: le 3PC (1/2)
69 Validation atomique rpartie: le 3PC (2/2)
70 FIN DU COURS
71 BIBLIOGRAPHIE

Master d'Informatique
Anne 2009/2010

B.D.R  74/66
M. Sene  Dpartement de Maths/Informatique