Vous êtes sur la page 1sur 13

11/01/2021

Bases des données réparties

Applications sous Oracle

Introduction

PLAY

1
11/01/2021

Plan

1 Introduction

2 Approches de conception

PLAY
3 Implémentations d’une BDD

4 Applications Oracle

Introduction

La définition du schéma de répartition est la partie la plus


délicate de la phase de conception d'une BDR car il
n'existe pas de méthode miracle pour trouver la solution
optimale.

L'administrateur doit donc prendre des décisions en


fonction des critères techniques et organisationnels
avec pour objectif de: PLAY
– minimiser le nombre de transferts entre sites,
– les temps de transfert,
– le volume de données transférées,
– les temps moyens de traitement des requêtes,
– le nombre de copies de fragments, etc...

2
11/01/2021

Schémas d’une BDR


Formulaire 2 Formulaire 1 utilisateurs

Vue externe 1 Vue externe 2

Schéma conceptuel

Lien Schéma de
de fragmentation
localisation

Schéma d’allocation
PLAY
Schéma Schéma Schéma
local 1 local 2 local 3

Schéma Schéma Schéma


interne 1 interne 2 interne 3

BD1 BD2 BD3

Conception ascendante

Démarche Bottom up design


des bases de données locales existantes
dans une base distribuée

BD fédéré
PLAY
Globale

 Réussir à intégrer des bases


Difficle de données existantes,
 Résoudre les problèmes
des systèmes
ou sémantique de BD1 BD2 … BDn Locales
.

3
11/01/2021

Conception descendante

Démarche top down design


des bases de données locales existantes
dans une base distribuée

BD répartie PLAY
Globale
● conception du schéma
Naturelle conceptuel globale
● distribution pour obtenir
les schémas conceptuels
locaux
● fragmentation BD1 BD2 … BDn Locales
● affectation aux sites
allocation

Intuition

Vue externe 1 Vue externe 2

utilisateurs
Schéma conceptuel
Administrateurs(ss)

Schéma de fragmentation

Schéma d’allocation

PLAY
Schéma local 1 Schéma local 2 Schéma local 3

Schéma interne 1 Schéma interne 2 Schéma interne 3

BD1 BD2 BD3

4
11/01/2021

Fragmentation Horizontale

• En conception descendante
– Adéquation géographique
– Recherche de performance (I/O, traitements)

• En conception ascendante
PLAY
– Des données comparables dans différentes
bases
– Pb : consolidation correcte (unicité des clés,
types des attributs )

Fragmentation: Définition

La fragmentation est le processus de


décomposition d'une base de données en un
ensemble de sous-bases de données. Cette
décomposition doit être sans perte
d'information.
PLAY
La fragmentation peut être coûteuse
existe des applications qui possèdent des
besoins opposés.

5
11/01/2021

Fragmentation: Règles

Les règles de fragmentation sont les suivantes :

1. La complétude : pour toute donnée relation R, il


existe un fragment Ri de la relation R qui possède cette
donnée.

2. La reconstruction : pour toute relation décomposée en


un ensemble de fragments Ri, il existe une opération
PLAY de
reconstruction.

3) La disjointure. Si une donnée di apparaît dans le


fragment Ri, alors il ne peut apparaître dans aucun autre
fragment(FV)

Fragmentation: Types

• Fragmentation par relation (classe d’objet)

Les fragments sont définies à partir de ‘classes’ de la


base de données.
Toutes les occurrences de la même classe appartient
au même fragment.
PLAY
L’opération du partitionnement est la définition des
sous-schémas
L’opération de recomposition est la réunion des sous-
schémas.

6
11/01/2021

Fragmentation par relation (classe d’objet)


Fragmentation: Types

Relation Compte
NoClient Agence TypeCompte Somme
174 723 Tanger courant 123 345.89
177 498 Rabat courant
34 564.00
Site 2
201 639 Tanger courant 45 102.50
201 639 Tanger dépôt Relation Agence
Site 1

Agence Adresse

Relation Client
Tanger
Rabat
PLAY
BD Fès, 3, 90002 Tanger
Avenue My Youssef, 21, 10002 Rabat
NoClient NomClient Prénom Age
174 723 Fatih Aymen 29
177 498 Hajji Hicham 38
201 639 Slimani Kamel 51
203 446 Yazami achid 36

Fragmentation Horizontale
Fragmentation: Types

• Fragmentation horizontale( Occurrences)


– Les tuples sont répartis horizontalement
– Sélection selon un prédicat de qualification
– Réversible par union

PLAY

7
11/01/2021

Fragmentation Horizontale
Fragmentation: Types

Région1 Sous-R1
Relation
Région2
Sous-R2
Compte1= Compte Where TypeCompte = «courant »
numéro Agence TypeCompte Somme

numéro Agence TypeCompte


TypeCompte Somme PLAY
174 723 Tanger courant 123 345.89
177 498 Rabat courant 34 564.00
201 639 Tanger courant 45 102.50 Compte2= Compte Where TypeCompte = «dépôt »
201 639 Tanger dépôt 325 100.00 numéro Agence TypeCompte Somme
203 446 Rabat courant 274 882.95

CREATE
Compte = Compte1 + Compte2 =

Fragmentation verticale
Fragmentation: Types

• Subdivision des attributs de T en


groupes.
• Les fragments sont reconstruits à
partir de quelques attributs
relation:
 Attributs et leurs occurrences
même relation
 Duplication de PLAY

• Découpage relation en sous-


tables : projection sur les colonnes
composants les fragments
• Reconstruction par jointure

8
11/01/2021

Fragmentation verticale
Fragmentation: Types

Sous-R1 Sous-R2
numCil
NoClient NomCli
Agence TypeCompte Somme

Région1

Région2
174 723 Tanger courant
TypeCompte 123 345.89
Relation 177 498 Rabat courant
courant 34 564.00
201 639 Tanger dépôt
dépôt 325 100.00
203 446 Rabat courant
courant 274 882.95

NoClient NoClient PLAY


174 723 174 723
177 498 177 498
201 639 201 639
203 446 203 446

Clompte1= Compte(NoClient, Agence Compte2= Clompte (NoClient, TypeCompte, Somme)

Compte= NoClient, NomCli, PrénomCli, Age


Where Client1.NoClient=Client2.NoClient =

Fragmentation hybride
Fragmentation: Types

• Fragmentation mixte: horizontale (occurrence) et verticale


(attribut)
 Fragment le plus grand = une table
 Fragment le plus petit = un tuple
– Partitionnement: Combinaison de projection et
sélection
– Reconstruction: union et jointure
PLAY de
– Trop de sensibilité aux mises à jour et trop
jointures

9
11/01/2021

Fragmentation hybride
Fragmentation: Types

Région1

Région2 - Application successive


Relation d’opérations de fragmentation
Région3 horizontale et verticale

Relation Client
NoClient NomClient Prénom
PLAY
Age
174 723 Fatih Aymen 29
Site 12
177 498 Hajji Hicham 38
201 639 Slimani Kamel 51
Site 11 203 446 Yazami Rachid 36

Site 2

Fragmentation hybride
Fragmentation: Types

• Exercice: Donner les fragments (avec les données) et la reconstruction de la relation compte.

numCil
NoClient NomCli
Agence prénomCli
TypeCompte age
Somme
174 723 Tanger courant 123 345.89
177 498 Rabat courant 34 564.00
201 639 Tanger dépôt 325 100.00
203 446 Rabat courant 274 882.95
PLAY

10
11/01/2021

Schéma de fragmentation
Méthodologie de la fragmentation

But: déterminer les « lignes de


découpe »
 En fonctions des requêtes les plus
fréquentes (ou les plus critiques) :
– sélectionner les requêtes,
– décomposer en projections, PLAY
sélections, jointures,
• condition de projection => fragmentation verticale,
• condition de sélection => fragmentation horizontale,
• condition de jointure One to Many (1,1 ; 1,n) =>
réseaux d

Fragmentation Horizontale
Méthodologie de la fragmentation

• Extraire toutes les conditions des requêtes retenues

• Création d'un ensemble de 2n conjonctions avec


suppression des conditions toujours fausses (en prenant
les formes positives ou négatives de chaque condition).
PLAY

11
11/01/2021

Fragmentation verticale
Méthodologie de la fragmentation

• Extraire les projections des requêtes :


p1 : NoClient, Agence
p3 : NoClient, Somme

• Générer le complément de ces expressions :


p1- : NoClient, TypeCompte, Somme
p3- : NoClient, Agence, TypeCompte
PLAY
• Appliquer la décomposition sur les fragments
obtenus par décomposition horizontale :
– considérer la (les) projection(s) sur le fragment
– considérer le (les) compléments sur le fragment.
(au moins 2 sous fragments)

Fragmentation verticale
Méthodologie de la fragmentation

• A partir des n expressions de projection qui concernent Fi, il faut produire


l'ensemble des 2n intersections des expressions de projection.

• On ôte pour les projections fausses et on simplifie le reste.


• Les fragments sont exclusifs (exception: att de joint)
• Si la requête ne dispose pas de jointure, il faut le rajouter PLAY

12
11/01/2021

Fragmentation dérivée

Fragments définis par (semi) jointure:

Ex : Commande( NC, NClient, Produit,Qté)


Commande1 = Commande " Client1
Commande2 = Commande " Client2
PLAY

Reconstruction par union des fragments


Ex : Commande = Commande1 U Commande

13

Vous aimerez peut-être aussi