Datenbanken normalisieren

Entitäten können mehr als ein Feld benötigen, um sie einmalig zu machen – deshalb erstellen wir einen so genannten zusammengesetzten Primärschlüssel. In Abbildung B besteht der Primärschlüssel der Tabelle titleauthor beispielsweise sowohl aus einer au_id als auch aus einer title_id.

Ich habe die Tabelle employee um ein Feld für die Sozialversicherungs-Nummern (ssn) ergänzt, um zu zeigen, dass eine Tabelle andere Felder haben kann, die als Primärschlüssel agieren. Aus Gründen des Designs habe ich mich jedoch entschlossen, keinen Primärschlüssel zu erstellen. In Abbildung B kann das Feld ssn verschlüsselt werden und ist so von der Anwendung nicht leicht zu verwenden. In diesem Fall ist ssn das, was als Kandidatenschlüssel bekannt ist. Dabei handelt es sich um einen Schlüssel oder eine Kombination verschiedener Schlüssel, die ausschließlich zur Identifizierung eines Datensatzes dienen. Eine Tabelle kann zwar nur einen Primärschlüssel, jedoch mehrere Kandidatenschlüssel haben.

Ist das normal?

Normalisierung ist der Prozess, in dem die Beziehungen zwischen Entitäten überprüft werden, damit potenzielle Probleme nicht während Entwicklungs-, Test- oder Produktions-Phasen auftreten. Der Kern dieser Aussage ist, dass nicht alle Beziehungen gleich sind; daher fällen wir ein normatives oder Werte-basiertes Urteil darüber, welche Beziehungen für das Modellieren unseres Systems am besten geeignet sind. Datenbank-Normalisierung hat sich zu einem Industrie-Standard entwickelt, denn Datenbank-Architekten haben die Nachteile des Arbeitens mit nicht normalisierten Datenbanken schnell bemerkt.

Derzeit gibt es fünf Normalformen, plus die Normalform Boyce-Codd. Ein Datenbank-Schema wechselt zur Boyce-Codd Normalform, indem sich wiederholende Gruppen und redundante Daten entfernt werden und indem sichergestellt wird, dass alle Nicht-Schlüssel-Attribute vollständig vom Primärschlüssel abhängen und dass alle Determinanten Kandidatenschlüssel sind.

Die Formen bewegen sich von weniger restriktiv bis zur restriktivsten. Typische Business-Anwendungen gehen nicht weiter als bis zur dritten Form, denn dies würde einen zu großen Zeit- und Geldaufwand bedeuten. Außerdem wären für das Zurückziehen der Daten zu viele Schnittstellen nötig, was die Leistungsfähigkeit einschränken würde.

Die ersten drei Normalformen lassen sich mit dem folgenden Satz zusammenfassen: „Der Schlüssel, der ganze Schlüssel und nichts als der Schlüssel“. Ich werde sie einzeln näher beleuchten.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Google stopft schwerwiegende Sicherheitslöcher in Chrome 124

Zwei Use-after-free-Bugs stecken in Picture In Picture und der WebGPU-Implementierung Dawn. Betroffen sind Chrome für…

6 Tagen ago

Studie: 91 Prozent der Ransomware-Opfer zahlen Lösegeld

Die durchschnittliche Lösegeldzahlung liegt bei 2,5 Millionen Dollar. Acht Prozent der Befragten zählten 2023 mehr…

6 Tagen ago

DMA: EU stuft auch Apples iPadOS als Gatekeeper ein

Eine neue Analyse der EU-Kommission sieht vor allem eine hohe Verbreitung von iPadOS bei Business-Nutzern.…

6 Tagen ago

Chips bescheren Samsung deutlichen Gewinnzuwachs

Das operative Ergebnis wächst um fast 6 Billionen Won auf 6,64 Billionen Won. Die Gewinne…

7 Tagen ago

Chrome: Google verschiebt das Aus für Drittanbietercookies

Ab Werk blockiert Chrome Cookies von Dritten nun frühestens ab Anfang 2025. Unter anderem gibt…

1 Woche ago

BAUMLINK: Wir sind Partner und Aussteller bei der Frankfurt Tech Show 2024

Die Vorfreude steigt, denn BAUMLINK wird als Partner und Aussteller bei der Tech Show 2024…

1 Woche ago