Dernière étape de la théorie de la normalisation, il

publicité
Dernière étape de la théorie de la normalisation, il existe des algorithmes qui
peuvent, à partir d’une relation (dite universelle) et de ses DF, générer une
décomposition qui présente des qualités intéressantes, tant en terme de
décomposition qu’en terme de qualité mono-relation.
Nous présentons dans cette séquence un de ces algorithmes et revenons sur la
coexistence des propriétés qualifiant les décompositions.
1
2
On présente couramment deux algorithmes.
Le premier assure une décomposition préservant données et DF, où toutes les
relations sont en 3NF. C’est cet algorithme que nous allons détailler.
Un autre algorithme est toutefois très utilisé, qui permet de générer une
décomposition préservant les données où toutes les relations sont en BCNF, mais
cet algorithme ne peut pas garantir la préservation des dépendances
fonctionnelles.
3
Le fait que l’algorithme de décomposition en 3NF parte d’une couverture
minimale de DF peut avoir une conséquence pour la suite du processus. La
décomposition produite dépendra de la CM choisie.
4
On part donc de la relation universelle et d’une couverture minimale de DF
5
Une fois choisie la DF traitée, le processus est identique tout au long du
processus.
6
7
8
Et on continue jusqu’à ce qu’il n’y ait plus de DF à traiter.
9
Attention, il faut vérifier que la clé de la relation universelle est bien présente
dans l’une des relations. C’est l’étape ultime de l’algorithme et elle est
importante.
10
Ici, on réitère le même raisonnement sur une relation universelle qui ne contient
plus les dates et prix d’achat… La disparition de ces information supprime une
des DF. Toutefois, il est essentiel de noter que la clé de la relation universelle ne
change pas, tout simplement parce que naturellement, les voitures et personnes
mises en regard dans la relation universelle ne sont pas choisies au hasard mais
sont bien les personnes qui possèdent les voiture.
Dans ce contexte, l’application de l’algorithme précédent génére directement les
relations R2, R3 et R4 précédente, mais si on ne fait pas attention à créer une
relation supplémentaire contenant la clé de la relation universelle, la
décomposition générée ne préserve pas les données : la recomposition affecterait
tous les véhicules à toutes les personnes.
Dans ce cas, on aurait obtenu une décomposition qui préservait les DF, mais pas
les données. Avec des jointures, on ne retrouve pas les données de la relation U.
Pour que la relation soit sans perte, il faut donc ajouter une relation contenant la
clef de la relation universelle.
Donc en fait, l’ultime étape de l’algorithme de décomposition en 3NF est
essentielle : Si, en fin de décomposition, il n’existe pas de relation ayant la clef
de la relation U, il faut créer une relation avec cette clef.
11
En effet, la 3NF n’empêche pas la redondance.
Ex: Ici, on a de la redondance sur Pays.
12
On ne donne pas ici l’algo de décomposition en BCNF (voir toute littérature sur
le sujet).
On voit ici un exemple de décomposition qui préserve les données mais pas les
DF. C’est la quatrième situation que nous n’avions pas encore rencontré ?
Préservation données ET DF : Voiture en R1 et R2 ou encore homobile en R1,
R2, R3 et R4
Aucune préservation
: Voiture en R’1, R’2 et R’3
Préservation des DF uniquet : Homobile sans date ni prix en R2, R3 et R4
Préservation des donnés seules
: Vins en Crus Région.
13
Cette séquence clôt la partie dédiée à la théorie de la normalisation.
Nous verrons ultérieurement que d’autres méthodes existent pour générer des
schémas relationnels, particulièrement dans le cas où les données sont variées et
complexes. Toutefois ces autres méthodes laissent un très large part à
l’interprétation de l’expert, et ne fournit pas de garde fous.
La théorie de la normalisation permet donc de résoudre des difficultés dans le
cas de problèmes difficiles à analyser mettant en jeu un ensemble réduit
d’attributs. Elle est un complément aux autres méthodes (voir séquence sur la
conception).
14
Téléchargement