2. Processus de fragmentation ou
partitionnement
a)
Définition
La fragmentation (le partitionnement) est le processus de
décomposition d'une base de données logique en un ensemble de
"sous" bases de données. Cette décomposition doit être sans
perte d'information.
b) Les
règles de fragmentation
Les règles à appliquer sont :
· La complétude : pour toute donnée d'une
relation R, il existe un fragment Ri de la relationR qui possède cette
donnée.
· La reconstruction : pour toute relation
décomposée en un ensemble de fragments Ri, ilexiste une
opération de reconstruction. Pour les fragmentations horizontales,
l'opération dereconstruction est l'une union. Pour les fragmentations
verticales c'est la jointure.
· La Disjonction : assure que les fragments d'une
relation sont disjoints deux à deux.
c) Techniques de
Fragmentation
Fragmentation horizontale
Décomposition de la table en groupes de lignes.
Exemple
Table Client (NCL, Nom, Ville)
Il existe deux types de fragmentation horizontale :
· Primaire
· Dérivée
Fragmentation horizontale primaire
La Fragmentation horizontale est définie par
l'opération de sélection
Exemple
Client (NCL, Nom, Ville) peut être fragmenté :
Client1= SELECT * FROM Client WHERE Ville =
«Kinshasa»
Client2= SELECT * FROM Client WHERE Ville <>
«Kinshasa»
Reconstruction de la relation initiale :
Client = Client1 ? Client2
Fragmentation horizontale
dérivée
La Fragmentation d'une table en fonction des fragments
horizontaux d'une autre table. (Cette fragmentation est obtenue dans le cas de
lien père-fils)
Exemple
Commande (NCL, N°Produit, Date, Qte,
N°Représentant)
Commande1= SELECT * FROM Commande
WHERE NCL IN
(SELECT NCL FROM CLIENT1)
Commande2= SELECT * FROM Commande
WHERE NCL IN
(SELECT NCL FROM CLIENT2)
Reconstruction de la relation initiale :
Commande = Commande1 ? Commande2
Fragmentation verticale
La fragmentation verticale est obtenue par
décomposition de la table en groupes de colonnes.Fragmentation verticale
est définie par l'opération de projection.
Table Client (N°Client, Nom, Sexe, Ville)
Exemple
Client (N°Client, Nom, Sexe, Ville) peut être
fragmentée :
Client1= SELECT N°Client, Nom FROM Client
Client2= SELECT N°Client, Sexe, Ville FROM Client
Reconstruction de la relation initiale :
Client = Client1 join Client2
Fragmentation mixte
La Fragmentation mixte résulte de l'application
successive d'opérations de fragmentation horizontale et de fragmentation
verticale.
|