Suchen

Definition Was ist Normalisierung?

| Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

Die Normalisierung findet bei relationalen Datenbankschemata statt und hat zum Ziel, Redundanzen, Inkonsistenzen und Anomalien zu vermeiden und zu beseitigen. Zur Durchführung kommen bis zu fünf verschiedene aufeinander aufbauende Normalformen zum Einsatz. Normalisierte Datenbanken folgen einem klar strukturierten Modell.

Firmen zum Thema

(Bild: © aga7ta - stock.adobe.com)

Normalisierung beschreibt den Prozess der Strukturierung und Umorganisation eines relationalen Datenbankschemas. Informationen werden in mehrere Tabellen aufgeteilt und über Beziehungen mit dem Ziel miteinander verknüpft, Redundanzen, Inkonsistenzen und Anomalien zu vermeiden und beseitigen. Die Methode der Zerlegung entspricht der relationalen Entwurfstheorie. Im Idealfall enthält eine normalisierte Datenbank keine vermeidbaren Redundanzen mehr und ist in sich vollständig konsistent. Die Datenbank ist durch die Normalisierung effizienter organisiert, flexibler und belegt keinen unnötigen Speicherplatz mehr.

Um eine Datenbank zu normalisieren, werden die sogenannten Normalformen angewandt. Sie bauen aufeinander auf und führen jeweils zu einer höheren Stufe der Normalisierung. Insgesamt existieren fünf verschiedene Normalformen, von denen häufig allerdings nur die ersten drei Formen zum Einsatz kommen. Wurde eine Datenbank normalisiert, liegt sie in der ersten, zweiten, dritten, usw. Normalform vor. Während der Normalisierung ist unbedingt zu vermeiden, dass Informationen verloren gehen. 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 Ziele der Normalisierung

Ein wesentliches Ziel der Normalisierung ist die Beseitigung von redundanten Informationen. Es existieren nach der Normalisierung keine Datendopplungen mehr und jede Information ist nur an einer Stelle der Datenbank abgelegt. Durch die Beseitigung der Redundanzen erhöht sich die Konsistenz der Datenbank. Weiteres zentrales Ziel der Normalisierung ist das Entfernen von Anomalien. Anomalien entstehen beispielsweise dadurch, dass Änderungen einer Information nicht an allen notwendigen Stellen einer Datenbank stattgefunden haben. Die Ziele der Normalisierung sind, kurz zusammengefasst, folgende:

  • Schaffung eines Datenbankmodells mit klarer Struktur
  • Beseitigung aller vermeidbarer Redundanzen
  • Vermeidung jeglicher Anomalien

Mögliche Nachteile durch eine Normalisierung

Die Normalisierung kann auch einige Nachteile mit sich bringen. So speichert eine vollständig normalisierte Datenbank zusammengehörige Daten nicht in einer, sondern in mehreren verschiedenen, miteinander verknüpften Tabellen. Für Anwender ist das Datenbankschema auf den ersten Blick unübersichtlicher. Um die zusammengehörenden Informationen zu erhalten, ist die Zusammenführung der Daten aus den verschiedenen Tabellen notwendig. Die Datenabfragen arbeiten mit Joins und sammeln die gewünschten Informationen aus den einzelnen Tabellen. Komplexe und umfangreiche Joins führen zu einer starken Belastung des Datenbanksystems.

Ein weiterer Nachteil ist, dass die Normalisierung einen erheblichen Aufwand darstellen kann. Er steigt zusätzlich, wenn die Normalisierung nicht schon beim Entwurf des relationalen Datenbankschemas stattfindet, sondern bei einer bereits mit Daten gefüllten Datenbank.

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. Es folgt eine kurze Beschreibungen der verschiedenen Normalformen, da eine ausführliche Darstellung den Rahmen dieser Definition sprengen würde.

Die erste Normalform (1NF)

In der ersten Normalform darf jedes Attribut nur einen atomaren (nicht zusammengesetzten) Wertebereich haben. Relationen müssen frei von Wiederholungsgruppen sein. Zum Beispiel ist das Feld "Name" einer Tabelle in die beiden Datenbankfelder "Vorname" und "Nachname" aufzuspalten.

Die zweite Normalform (2NF)

Für die zweite Normalform muss die erste Normalform vorliegen. Zusätzlich darf jeder Datensatz nur einen einzigen Sachverhalt abbilden. Beinhaltet eine Tabelle mehrere Sachverhalte, wird sie in mehrere Tabellen aufgespalten. Beispielsweise erfolgt eine Aufteilung in thematische Tabellen wie "Produktdaten", "Bestelldaten" und "Kundendaten".

Die dritte Normalform (3NF)

Die dritte Normalform gilt als eingehalten, wenn die zweite Normalform erfüllt ist und keine transitiven (indirekten) Abhängigkeiten mehr bestehen. Beispiel ist das Aufspalten einer Tabelle mit "Kunde", "Postleitzahl" und "Ort" in zwei Tabellen mit "Kunde" und "Ort" sowie "Ort" und "Postleitzahl".

Die Boyce-Codd-Normalform (3.5NF oder BCNF)

Die Boyce-Codd-Normalform ist eine Verschärfung der dritten Normalform.

Die vierte Normalform (4NF)

Eine Datenbank der vierten Normalform enthält nur noch triviale, mehrwertige Abhängigkeiten.

Die fünfte Normalform (5NF)

Die fünfte Normalform beseitigt voneinander abhängige mehrwertige Abhängigkeiten.

(ID:45988916)

Über den Autor