Conception et Normalisation des Bases de Données
La conception et la normalisation des bases de données constituent la discipline de structuration des schémas relationnels de manière à ce qu'ils représentent fidèlement les données tout en éliminant la redondance et les anomalies de mise à jour, d'insertion et de suppression qu'elle engendre.
Definition
La normalisation est le processus de décomposition des relations visant à réduire la redondance et à éviter les anomalies, guidé par les dépendances fonctionnelles et multivaluées qui existent entre les attributs, tout en préservant le contenu informationnel du schéma original.
Scope
Ce domaine couvre la théorie et la pratique de l'affinage des schémas relationnels : les dépendances fonctionnelles et multivaluées en tant que contraintes sémantiques qui guident la conception, la hiérarchie des formes normales (de la 1FN à la FNBC, 4FN), et la décomposition des relations pour éliminer la redondance tout en préservant les jointures sans perte et, lorsque cela est possible, les dépendances. Il exclut les notations de modélisation conceptuelle telles que les diagrammes entité-association (traités dans les modèles de données et les langages de requête) et les choix de conception physique tels que l'indexation.
Sub-topics
Core questions
- Quelles dépendances fonctionnelles et multivaluées existent entre les attributs d'une relation ?
- Quelles anomalies — de mise à jour, d'insertion, de suppression — la redondance provoque-t-elle ?
- Quelles conditions définissent chaque forme normale, et quelle redondance chacune élimine-t-elle ?
- Comment une relation peut-elle être décomposée sans perte d'information ?
- Quand la préservation des dépendances doit-elle être sacrifiée au profit d'une forme normale supérieure ?
Key concepts
- dépendance fonctionnelle
- axiomes d'Armstrong et fermeture
- clés candidates et attributs premiers
- anomalies de mise à jour, d'insertion, de suppression
- première, deuxième, troisième forme normale
- forme normale de Boyce-Codd
- dépendances multivaluées et 4FN
- décomposition sans perte de jointure
- préservation des dépendances
Key theories
- Dépendances fonctionnelles et fermeture
- Une dépendance fonctionnelle X → Y affirme que X détermine Y ; les axiomes d'Armstrong permettent de calculer la fermeture d'un ensemble de dépendances, ce qui est à la base de la recherche de clés et de la vérification des formes normales.
- Formes normales
- De la première à la troisième forme normale et la forme normale de Boyce-Codd imposent des conditions progressivement plus strictes sur les dépendances fonctionnelles pour éliminer la redondance ; la quatrième forme normale étend cela aux dépendances multivaluées.
- Décomposition sans perte de jointure et préservant les dépendances
- Une décomposition n'est souhaitable que si elle est sans perte (la relation originale peut être reconstruite en joignant les parties) et idéalement préservant les dépendances (toutes les dépendances originales peuvent être appliquées sur les parties), des critères qui contraignent la manière dont les schémas sont divisés.
Clinical relevance
La normalisation est une compétence fondamentale dans la construction de systèmes d'information fiables : les schémas bien normalisés préviennent les données incohérentes et simplifient la maintenance dans les applications transactionnelles, tandis que les praticiens dénormalisent également délibérément pour les analyses et les rapports à forte lecture, faisant des compromis un élément central de l'ingénierie des bases de données dans le monde réel.
History
Codd a introduit les première, deuxième et troisième formes normales au début des années 1970 et, avec Boyce, la forme normale de Boyce-Codd, plus stricte. Ronald Fagin a ensuite défini les quatrième et cinquième formes normales basées sur les dépendances multivaluées et de jointure. Ensemble, ces résultats ont transformé la conception de schémas d'un art en une théorie fondée sur les contraintes de dépendance.
Debates
- Jusqu'où normaliser en pratique
- Une normalisation stricte élimine la redondance et les anomalies mais peut nécessiter de nombreuses jointures qui ralentissent les charges de travail à forte lecture ; les praticiens débattent du moment où une dénormalisation contrôlée pour la performance est justifiée par rapport au moment où elle invite les incohérences mêmes que la normalisation visait à prévenir.
Key figures
- Edgar F. Codd
- Raymond F. Boyce
- Ronald Fagin
Related topics
Seminal works
- codd1972
- silberschatz2019
- garciamolina2008
Frequently asked questions
- Pourquoi la redondance pose-t-elle problème si je suis prudent ?
- Le stockage redondant du même fait dans plusieurs lignes conduit à des anomalies : une mise à jour peut modifier certaines copies mais pas d'autres (anomalie de mise à jour), il peut être impossible d'enregistrer un fait sans données non pertinentes (anomalie d'insertion), ou la suppression d'une ligne peut entraîner la perte d'informations que vous souhaitiez conserver (anomalie de suppression). La normalisation élimine la redondance qui rend ces situations possibles.
- Quelle est la différence entre la FNBC et la troisième forme normale ?
- Les deux traitent de la redondance due aux dépendances fonctionnelles, mais la FNBC est plus stricte : elle exige que le côté gauche de chaque dépendance non triviale soit une super-clé. Un schéma peut être en 3FN mais pas en FNBC. La FNBC donne toujours une décomposition sans perte mais peut ne pas préserver les dépendances, c'est pourquoi la 3FN est parfois conservée.