Normalisierung
Rica
Was ist Normalisierung?
❖ Normalisierung beschreibt den Prozess der Strukturierung und Umorganisation eines relationalen Datenbankschemas
➢ Normalformen
■ bauen aufeinander auf
■ fünf verschiedene Normalformen
❖ Die Normalisierung findet in der Regel bereits beim Entwurf einer relationalen
Datenbank statt. Soll eine mit Informationen gefüllte Datenbank im Nachhinein
normalisiert werden, entsteht ein erhöhter Aufwand.
Die verschiedenen Normalformen
Die verschiedenen Normalformen bauen aufeinander auf. Das bedeutet, dass jede Normalform neben den eigenen Kriterien die Kriterien der jeweils niedrigeren Normalformen erfüllen muss. Die gängigen
Normalformen sind:
● die erste Normalform (1NF)
● die zweite Normalform (2NF)
● die dritte Normalform (3NF)
● die Boyce-Codd-Normalform (3.5NF oder BCNF)
● die vierte Normalform (4NF)
● die fünfte Normalform (5NF)
In der Praxis finden meistens nur die ersten drei Normalformen (1NF, 2NF und 3NF)
Anwendung. Die dritte Normalform eines Datenbankentwurfs gilt als ausreichend für eine gute
Balance zwischen Leistung, Speicherplatzeffizienz, Flexibilität und Redundanz. 3.5NF, 4NF und
5NF kommen häufig beispielsweise bei wissenschaftlichen Datenbankentwürfen zum Einsatz.
Redundanz
Dabei bedeutet Redundanz (lateinisch redundare „im Überfluss vorhanden sein“) auf Deutsch Doppelung bzw.
Überschneidungen.
❖ sind doppelte Informationen in einer Datenbank bzw. Datenbank-Tabelle
Die Normalisierung entfernt doppelte Informationen, ohne das ein Informationsverlust in
anderen Relationen stattfindet.
Inkonsistenzen bedeutet: Widersprüchlichkeit oder Unbeständigkeit der eingegebenen Daten.
Als Beispiel: Mitarbeiter pflegen die Daten der Kundendatenbank. Dazu können bei jedem Kunden die PLZ und der Ort unabhängig voneinander eingetragen werden.
Der erste Mitarbeiter trägt nun einmal als PLZ „72070“ und als Ort „Tübingen“ ein. Der zweite Mitarbeiter als PLZ „72070“ und als Ort „Tübingen am Neckar“ ein – es liegt schon eine Inkonsistenz vor. Der nächste Mitarbeiter trägt für den nächsten Kunden als PLZ wieder „72070“ ein und als Ort dann „Tuebingen“. Und der vierte Mitarbeiter trägt (weil er eine Großschreiballergie hat, dann als Ort „tübingen“ ein.
Am Abend kommt der Chef und lässt sich einer Statistik ausgeben, wie viele Kunden aus „Tübingen“ eingetragen wurden – er bekommt nur einen. Hätte er mit der PLZ
„72070“ die Statistik erstellt, hätte er 4 Kunden angezeigt bekommen.
Warum Normalisierung ?
★ Beseitigung von redundanten Informationen
○ keine Datendopplungen mehr
○ jede Information ist nur an einer Stelle der Datenbank abgelegt
★ Entfernen von Anomalien
○ Es existieren drei Arten von Datenbank-Anomalien
■ die Einfüge(Insert)-Anomalie,
■ Daten werden gar nicht in die Datenbank übernommen
● der Primärschlüssel hat keinen Wert erhalten , oder hat eine unvollständigen Eingabe von Daten zu Inkonsistenzen führt
■ die Änderungs(Update)-Anomalie
● auch Update-Anomalie genannt, werden gleiche Attribute eines Datensatzes in einer Transaktion nicht automatisch geändert. So entsteht eine Inkonsistenz der Daten
■ die Lösch(Delete)-Anomalie
● ein Benutzer will einer Datenbank aktiv Informationen löschen und damit indirekt, aufgrund des fehlerhaften Datenbankdesigns, andere
zusammenhängende Informationen parallel mitlöscht.
Die erste Normalform (1NF)
➔
nur gleichartigen Inhalt enthalten◆ Relationen müssen frei von Wiederholungsgruppen sein.
◆ Es bedeutet, dass jede Information innerhalb einer Tabelle eine eigene Tabellenspalte bekommt und zusammenhängende Informationen, wie zum Beispiel die Postleitzahl (PLZ) und der Ort, nicht in einer Tabellenspalte vorliegen dürfen.
Während der Anforderungsanalyse in der Datenbankentwicklung ist folgende Rechnungsinformation aufgenommen worden:
Nach der Anwendung der Ersten Normalform (1NF) sieht das Ergebnis folgendermaßen aus:
Die zweite Normalform (2NF)
➔ die erste Normalform muss vorliegen!
➔ Jeder Datensatz bildet nur einen Sachverhalt ab. Liegen in einer Tabelle Daten vor, die nicht nur 1 Sachverhalt abbilden, werden diese Daten in einzelne thematische Tabellen unterteilt.
Die Rechnungsinformationen liegen nun in der ersten Normalform (1NF) vor:
Nach der Anwendung der Zweiten Normalform (2NF) sieht das Ergebnis folgendermaßen aus:
Die dritte Normalform (3NF)
➔ Die erste und zweite Normalform muss erfüllt sein!
➔ transitiven Abhängigkeiten
Die Kundeninformationen liegen nun in der zweiten Normalform (2NF) vor:
In der Tabelle „Kunde“ sind die Attribute „Vorname“, „Straße“ und „PLZ“ abhängig vom Attribut „Name“, nicht vom Primärschlüssel „Knr“. Außerdem ist das Attribut „Ort“ abhängig vom Attribut „PLZ“.