Normalisierung
Unter Normalisierung eines relationalen Datenschemas versteht man die Aufteilung von Attributen in mehrere Relationen gemäß den Normalisierungsregeln. Ziel ist ein Datenschema in einer Form, die
- Datenredundanzen vermeidet
- logische Widersprüche in der Datenbasis verhindert
- höchstmögliche Flexibilität und einen schnellen Zugriff gewährleistet
Die Aufteilung des Datenbankschemas muss dabei verlustfrei sein, d.h. ein späteres Zusammensetzen der geteilten Tabelle über Fremd- und Primärschlüssel muss wieder zur ursprünglichen Tabelle führen, ohne dass dabei Informationen verloren gehen.
Normalformen
Normalisierung beruht auf sogenannten Normalformen. Folgende Normalformen können unterschieden werden:
Eine Relation ist in der 1. Normalform, wenn
- alle Attribute nur atomare Werte enthalten
Das AttributAdresse
ist z. B kein atomares Attribut. Adressen können in die Attribute Straße, Hausnummer, Postleitzahl und Ort aufgeteilt werden. Das AttributName
ist ebenso nicht atomar, denn Namen können in (erster und zweiter) Vorname und Nachname aufgeteilt werden. - jede Zeile durch ein Schlüsselattribut oder eine Attributkombination eindeutig identifiziert ist
Im folgenden Video wird darauf eingegangen, wann eine Normalisierung notwendig ist und die genannten Normalformen noch einmal genauer erklärt.
Es gibt insgesamt 6 Normalformen, darunter auch die Boyce-Codd-Normalform (BCNF), auf die wir jedoch in diesem Modul nicht weiter eingehen möchten.