Normalisation vs dénormalisation
Les bases de données relationnelles sont composées de relations (tables connexes). Les tables sont constituées de colonnes. Si les tables sont deux grandes (i.e. trop de colonnes dans un seul tableau), puis des anomalies de base de données peuvent se produire. Si les tables sont deux petites (i.e. La base de données est composée de nombreuses tables plus petites), il serait inefficace pour l'interrogation. La normalisation et la dénormalisation sont deux processus utilisés pour optimiser les performances de la base de données. La normalisation minimise les redondances qui sont présentes dans les tables de données. La dénormalisation (inverse de la normalisation) ajoute des données redondantes ou des données de groupe.
Qu'est-ce que la normalisation?
La normalisation est un processus qui est effectué pour minimiser les redondances qui sont présentes dans les données dans les bases de données relationnelles. Ce processus divisera principalement les grandes tables dans des tables plus petites avec moins de redondances (appelées «formes normales»). Ces tables plus petites seront liées les unes aux autres à travers des relations bien définies. Dans une base de données bien normalisée, toute modification ou modification des données nécessitera de modifier un seul tableau. Première forme normale (1NF), deuxième forme normale (2NF) et troisième forme normale (3NF) ont été introduites par Edgar F. Corde. La forme normale de Boyce-Codd (BCNF) a été introduite en 1974 par CODD et Raymond F. Boyce. Des formes normales plus élevées (4NF, 5NF et 6NF) ont été définies, mais elles sont utilisées rarement.
Un tableau conforme à 1NF assure qu'il représente réellement une relation (i.e. il ne contient aucun enregistrement qui se répète) et ne contient aucun attribution qui est une valeur relationnelle (i.e. Tous les attributs devraient avoir des valeurs atomiques). Pour qu'un tableau se conforme à 2NF, il doit être respecté à 1NF et à tout attribut qui ne fait partie d'une clé candidate (i.e. Attributs non prison) devraient dépendre pleinement de l'une des clés candidates du tableau. Selon la définition du CODD, un tableau est dit en 3NF, si et seulement si, ce tableau est dans la deuxième forme normale (2NF) et chaque attribut du tableau qui n'appartient pas à une clé candidate devrait dépendre directement de chaque Clé candidate de ce tableau. BCNF (également connu sous le nom de 3.5nf) capture certaines les anomalies qui ne sont pas abordées par le 3NF.
Qu'est-ce que la dénormalisation?
La dénormalisation est le processus inverse du processus de normalisation. La dénormalisation fonctionne en ajoutant des données redondantes ou en regroupant des données pour optimiser les performances. Même si l'ajout de données redondantes semble contre-productive, la dénormalisation est parfois un processus très important pour surmonter certaines des lacunes du logiciel de base de données relationnel qui peut entraîner des pénalités de performances lourdes avec des bases de données normalisées (même réglées pour des performances plus élevées). En effet.
Quelle est la différence entre la normalisation et la dénormalisation? - La normalisation et la dénormalisation sont deux processus qui sont complètement opposés. - La normalisation est le processus de division des tables plus grandes en plus petites réduisant les données redondantes, tandis que la dénormalisation est le processus d'ajout de données redondantes pour optimiser les performances. - La normalisation est effectuée pour empêcher les bases de données anomalies. - La dénormalisation est généralement effectuée pour améliorer les performances de lecture de la base de données, mais en raison des contraintes supplémentaires utilisées pour la dénormalisation, écrit (i.e. insérer, mettre à jour et supprimer les opérations) peuvent devenir plus lentes. Par conséquent, une base de données dénormalisée peut offrir de pires performances d'écriture qu'une base de données normalisée. - Il est souvent recommandé de «normaliser jusqu'à ce que cela fait mal, dénormalise jusqu'à ce qu'il fonctionne».
|