Sobes.tech
Middle

Was ist Normalisierung?

sobes.tech KI

Antwort von AI

Die Datenormalisierung im Kontext von Datenbanken ist der Prozess, Daten zu organisieren, um Redundanz zu verringern und die Datenintegrität zu verbessern. Dies wird erreicht, indem große Tabellen in kleinere Tabellen aufgeteilt und ihre Beziehungen hergestellt werden.

Hauptziel:

  • Eliminierung von Datenredundanz.
  • Verbesserung der Datenintegrität (Vermeidung von Einfüge-, Aktualisierungs- und Löschanomalien).
  • Steigerung der Effizienz bei Speicherung und Abfragen (in einigen Fällen).

Der Normalisierungsprozess basiert auf den Prinzipien der Normalformen (NF). Die gebräuchlichsten sind:

  • Erste Normalform (1NF): Atomare Daten in Zellen, keine wiederholenden Gruppen von Spalten.
  • Zweite Normalform (2NF): Sie ist in 1NF und jedes Nicht-Schlüssel-Attribut hängt vollständig von dem Primärschlüssel ab.
  • Dritte Normalform (3NF): Sie ist in 2NF und es gibt keine transitiven funktionalen Abhängigkeiten von Nicht-Schlüssel-Attributen vom Primärschlüssel über andere Nicht-Schlüssel-Attribute.

Beispiel:

Originaltabelle "Bestellungen_Produkte":

Bestell-ID Bestelldatum Produkt-ID Produktname Produktpreis Menge Kundenname Kundenadresse
1 2023-10-27 101 Telefon 500 1 Ivan Pétrov Puschkina Str. 10
1 2023-10-27 102 Kopfhörer 100 2 Ivan Pétrov Puschkina Str. 10
2 2023-10-27 101 Telefon 500 1 Maria Ivanova Lermontova Str. 5

Nach Normalisierung (bis 3NF):

Tabelle "Bestellungen":

Bestell-ID Bestelldatum Kunden-ID
1 2023-10-27 1
2 2023-10-27 2

Tabelle "Bestellpositionen":

Positions-ID Bestell-ID Produkt-ID Menge
1 1 101 1
2 1 102 2
3 2 101 1

Tabelle "Produkte":

Produkt-ID Produktname Produktpreis
101 Telefon 500
102 Kopfhörer 100

Tabelle "Kunden":

Kunden-ID Kundenname Kundenadresse
1 Ivan Pétrov Puschkina Str. 10
2 Maria Ivanova Lermontova Str. 5

Allerdings kann eine zu starke Normalisierung zu einer Zunahme der Joins (JOIN) bei Abfragen führen, was die Leistung beeinträchtigen kann. Daher wird bei der Gestaltung von Datenbanken oft ein Gleichgewicht zwischen Normalisierungsgrad und Leistung gesucht. Denormalisierung ist der Prozess, bei dem absichtlich die Normalformen verletzt werden, um die Leistung zu verbessern, meist durch Hinzufügen von Redundanz.