Concept: Normalisation
La normalisation est le processus qui sert à réduire une structure de données complexe à sa forme la plus simple et la plus stable pour éviter les redondances.
Relations
Eléments connexes
Description principale

Introduction

Ce document est une discussion rapide sur la normalisation de données appliquée au développement du Produit : Modèle de données. Il ne traite pas de la normalisation dans son ensemble car c'est un sujet très vaste qui est documenté dans beaucoup de textes sur la conception d'une base de données. Dans [NBG01], la normalisation est définie comme "une technique analytique utilisée pour produire une conception de base de données relationnelle correcte". Dans la pratique, la normalisation est une procédure visant à éliminer les redondances dans le modèle de données en appliquant des règles restrictives. La suppression des redondances dans les tables du modèle de données permet de préserver l'intégrité référentielle des données dans la base de données. 

La normalisation s'effectue généralement sur le modèle de données après avoir développé dans le modèle une version initiale des tables et de leurs relations. Le moment exact pour appliquer cette normalisation dépend de la situation propre au projet et du Concepteur de base de données. Le processus s'effectue par étape dans les tables du modèle de données où, à chaque étape, on applique des règles plus strictes qu'à l'étape précédente. 

Niveaux de normalisation

La normalisation est classifiée de façon hiérarchique sous des formes numérotées, les formes les plus courantes étant la première, la deuxième et la troisième forme. Chaque niveau de normalisation est plus restrictif que le niveau précédent. Les trois premiers niveaux hiérarchiques sont les suivants :

  • Première forme normale - Les groupes de colonnes qui se répètent dans les tables ont été supprimées de façon à ce que les données soient organisées en unités atomiques.
  • Deuxième forme normale - Les données sont sous la première forme normale et la redondance des zones de clé primaire a été éliminée de telle sorte que les valeurs des colonnes dépendent entièrement de la zone de clé primaire.
  • Troisième forme normale - Les données sont sous la deuxième forme normale et les colonnes ne dépendent d'aucune colonne autre qu'une colonne de clé.

D'autres niveaux de normalisation existent mais ils ne font pas l'objet de cette discussion. Vous pouvez trouver des informations sur ces niveaux dans [DAT99]. C'est le concepteur de base de données qui décide quel est le niveau exact de normalisation à appliquer au modèle de données selon la situation propre du projet.