Les DF Et La Normalisation
Les DF Et La Normalisation
Les DF Et La Normalisation
1. Introduction
La normalisation est une étape très importante dans la conception d'une base de
données. Elle consiste à décomposer une relation, sans perte d'informations, en plusieurs
relations, qui ne possèdent pas de problème de redondance, de mise à jour, d'insertion ou
de suppression de données.
2. La redondance de données
Le phénomène de redondance de données est problématique dans les bases de
données relationnelles. En effet, un schéma relationnel possédant une redondance ou une
incohérence de données est considéré comme étant mal conçu. En vue d'éliminer les
redondances ou du moins, les limiter, on procède à la normalisation de celle-ci, en se basant
sur le principe de dépendance fonctionnelle.
Exemple :
Soit le schéma relationnel SUIVI (Matricule, Nom, Prénom, Adresse, CodeModule, Intitulé,
Coef, Note). La relation définit le suivi des modules par des étudiants.
SUIVI
Matricule Nom Prénom Adresse CodeModule Intitulé Coef Note
001 SAKI Mourad Bejaia F124 BDD 04 10
002 AYAD Yasmine Bejaia M128 Réseaux 03 12
003 MALKI Leila Alger F130 GL 05 14
001 SAKI Mourad Bejaia M128 Réseaux 03 11
002 AYAD Yasmine Bejaia F130 GL 05 15
1
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
Solution : Pour remédier aux problèmes cités plus haut, on décompose la relation
SUIVI en trois relations : ETUDIANTS, MODULES et SUIVRE. Puisqu'un étudiant peut
suivre plusieurs modules, et un module est suivi par plusieurs étudiants.
ETUDIANTS (Matricule, Nom, Prénom, Adresse).
MODULES (CodeModule, Intitulé, Coef).
SUIVRE (#Matricule,#CodeModule,Note).
ETUDIANTS MODULES
SUIVRE
Matricule CodeModule Note
001 F124 10
001 M128 11
002 M128 12
002 F130 15
003 F130 14
Table 2. Décomposition de la relation SUIVI sans redondance de données
2
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
Exemple :
3.2.1. La transitivité
Si AB et BC alors AC.
3.2.2. La réflexivité
Si B ⊆ A, alors A B.
On appelle dépendances fonctionnelles triviales les DF qui sont issues de la réflexivité
(l'attribut A détermine lui-même ou une partie de lui-même)
3.2.3. La pseudo-transitivité
Il s'agit d'une généralisation de la transitivité. Si A B et BC D alors AC D.
3.2.4. L'union
Lorsque deux dépendances fonctionnelles ont le même déterminant, il est possible de les
regrouper dans une seule et même dépendance fonctionnelle tel que :
Si A B et A C alors A BC.
3.2.5. La décomposition
Permet de décomposer la conclusion d'une DF composée de deux attributs ou plus en
plusieurs DF tel que Si A BC alors A B et A C.
3
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
3.2.6. L'augmentation
Permet d'ajouter un ou plusieurs attributs au déterminant et à la conclusion de la
dépendance fonctionnelle tel que : Si A B, alors AC BC et/ou AC B.
1. Initialiser X + à X ;
2. Initialiser un ensemble F′ avec les dépendances fonctionnelles de F ;
3. Chercher une dépendance fonctionnelle u v ∈ F′ telle que u ⊆ X + ;
Si la dépendance u v existe Faire
Si v ∉ X +
X + = X + ∪ {v} ;
Finsi
4. F ′ = F ′ − { u v } ;
5. Aller à l’instruction 3.
Finsi
Fin
Sortie : X + la fermeture de X.
Exemple :
4
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
Exemple : ISBN, Auteur Titre. Dans cette DF, le titre d'un livre peut être déduit par l'ISBN
qui est un identifiant unique. Donc l'attribut Titre dépend fonctionnellement de l'attribut
ISBN. Alors cette DF n'est pas élémentaire.
5
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
Fin
Sortie : La dépendance X Y est redondante dans F ou non.
Exemple :
Soit le schéma de relation R (A, B, C, D, E, F) et l'ensemble de dépendances fonctionnelles F =
{A B, ABC, ABC, BD A, A EF, DE}. Les DF A B , ABC, DE sont redondantes.
A B est-elle redondante ?
On calcule A+ dans F – {A B}
A+ = {A, B, C, E, F} on remarque que B ∈ A+ alors A B est redondante.
ABC est-elle redondante ?
On calcule (AB)+ dans F – {ABC}
(AB)+ = {A, B, C, E, F} on remarque que C ∈ (AB)+ alors ABC est redondante.
DE est-elle redondante ?
On calcule D+ dans F – {DE}
D+ = {D} on remarque que E ∉ D+ alors DE n'est pas redondante.
6
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
1. Initialiser F′ à F ;
2. Mettre les dépendances de F′ sous forme canonique.
Toute dépendance X A1 , … , An est remplacée par n dépendances X Ai .
3. Réduire à gauche les dépendances non élémentaires.
Pour toute dépendance X Y ∈ F′ faire
Si ∃ Z ⊂ X / Y ∈ Z + alors
F′ = F′ − {X Y} ∪ {Z Y } ;
Finsi
Finpour
4. Éliminer les dépendances redondantes.
Pour toute dépendance XY ∈ F′ faire
Calculer X + dans F′ – {XY} ;
Si Y ∈ X + alors
XY est redondante ;
F′ = F′ − {XY} ;
Finsi
Finpour
Fin.
Sortie : La couverture minimale F′.
Exemple :
Soit le schéma relationnel R (A, B, C, D, E, F) et l'ensemble de dépendances fonctionnelles
1. Initialiser F ' à F
F′ = {AB, ABC, BDE, AD, AGE, BE G}.
2. Mettre les DF de F′ à la forme canonique
F′ = {AB, ABC, BD, BE, AD, AGE, BEG}
3. Réduire à gauche les dépendances non élémentaires
Les dépendances fonctionnelles : AB, BD, BE, AD sont élémentaires.
ABC
7
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
8
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
Puissance
Type
NumVéhicule Marque
Couleur
9
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
Remarque : Si la relation R possède plusieurs clés minimales elles sont appelées "clés
candidates. La clé primaire, qui est unique, est choisie parmi les clés candidates.
Propriété 2. Si les attributs qui ne figurent pas dans les conclusions des dépendances
fonctionnelles forment une clé minimale, alors elle est unique.
F = {A BC ; CD E ; B D ; E A}
On a : A+ = {A, B, C, D, E}
La condition 1 est vérifiée puisque l'attribut A détermine tous les attributs de R, alors il s'agit
d'une clé minimale.
10
Université Abderrahmane Mira - Bejaia Année universitaire : 2020/2021
Faculté des Sciences Exactes Niveau : L3 RN SI
Département d'informatique Module : Bases de données
E + = {E, A, B, C, D} l'attribut E détermine tous les attributs de R, Alors il s'agit d'une clé
minimale.
(BC)+ = {B, C, D, E, A} et B+ = {B, D} C+ ={C} Les conditions 1 et 2 sont vérifiées, alors BC est
une clé minimale.
(CD)+ = {C, D, E, A, B}, C+ ={C} et D+ = {D} Les conditions 1 et 2 sont vérifiées alors CD est
une clé minimale.
11