08.10.2013 Aufrufe

BESTELLUNG - Wirtschaftsinformatik HTW Berlin

BESTELLUNG - Wirtschaftsinformatik HTW Berlin

BESTELLUNG - Wirtschaftsinformatik HTW Berlin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 1<br />

Die Güte von<br />

Datenmodellen<br />

etwas genauer<br />

betrachtet<br />

(Normalformen des RDM)


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 2<br />

Güte von Datenmodellen<br />

Die Güte oder auch Qualität von Datenmodellen kann unterschiedlich sein und wird<br />

neben der richtigen Darstellung des Inhalts (Semantik) auch an bestimmten formalen<br />

Kriterien gemessen, wie z. B. an<br />

• dem Grad der Redundanzfreiheit,<br />

• dem Schutz vor potentiellen Inkonsistenzen (Anomalien),<br />

• der Übersichtlichkeit und leichten Handhabbarkeit des Datenmodells,<br />

• der Effizienz potentieller Datenzugriffe usw.<br />

Zwei mögliche Wege führen zu "guten“ Datenmodellen<br />

Normalisierung von Relationen<br />

Ein vorgegebener Entwurf niedriger<br />

Güte soll verbessert werden.<br />

Ausgangspunkte sind<br />

funktionale Abhängigkeiten zwischen<br />

Attributen und<br />

gegebene ggf. "schlechte" Relationen<br />

Synthese von Relationen<br />

Es soll von vornherein ein "optimales"<br />

Modell konstruiert werden.<br />

Erst im<br />

Kapitel 4<br />

Semantische Beziehungen zwischen<br />

Datenobjekten (Entitys) und<br />

ermittelte Attribute der Entitys.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 3<br />

Was ist nun genau die Normalisierung<br />

Physische relationale Datenmodelle in 1NF können von schlechter Qualität<br />

sein, d. h. zu Doppelarbeiten und Fehlern im Umgang mit der modellierten<br />

Datenbank führen.<br />

Ursache dafür sind mögliche Redundanzen und Anomalien.<br />

Der Prozess der Qualitätsverbesserung eines physischen relationalen<br />

Datenmodells durch Beseitigung/Verminderung der Redundanzen und<br />

Anomalien wird Normalisierung genannt.<br />

Von besonderer Bedeutung für die Modellierung von relationalen<br />

Datenbanken (RDB) ist die dritte Normalform (3NF).<br />

Die Theorie der Normalisierung fußt auf funktionalen Abhängigkeiten<br />

zwischen den Attributen einer Relation.<br />

Neben dem theoretischen Ansatz der Normalisierung gibt es aus praktischer<br />

Sicht häufig auftretende semantische Beziehungstypen, die immer zum<br />

gleichen Resultat des Normalisierungsprozesses führen.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 4<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Redundanz: Weitschweifigkeit, Überfluss (Überladung einer Information mit<br />

überflüssigen Informationselementen)<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)<br />

Die Tabelle befindet sich in 1NF, ist also formal zulässig, aber qualitativ<br />

nicht hinreichend gut !


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 5<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Redundanz: Weitschweifigkeit, Überfluss (Überladung einer Information mit<br />

überflüssigen Informationselementen)<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)<br />

Alle grün gekennzeichneten Informationen sind aus<br />

unterschiedlichen Gründen redundant !


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 6<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Anomalie: Unregelmäßigkeit, Regelwidrigkeit - (1) Einfügeanomalie<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)<br />

Fehlende Attribute bei Einfügung von Tupeln.<br />

679 Mopsfidel


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 7<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Anomalie: Unregelmäßigkeit, Regelwidrigkeit - (2) Änderungsanomalie<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 8<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Anomalie: Unregelmäßigkeit, Regelwidrigkeit - (2) Änderungsanomalie<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Nimmmich 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 9<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Anomalie: Unregelmäßigkeit, Regelwidrigkeit - (2) Änderungsanomalie<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Nimmmich 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Nimmmich 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)<br />

Mehrfach gespeicherte Attribute zwingen zur mehrfachen Änderung des<br />

Sachverhaltes.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 10<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Anomalie: Unregelmäßigkeit, Regelwidrigkeit - (3) Löschanomalie<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 11<br />

Redundanzen und Anomalien der Datenmanipulation im RDM<br />

Anomalie: Unregelmäßigkeit, Regelwidrigkeit - (3) Löschanomalie<br />

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl<br />

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200<br />

118 10033 Bussard AG 05. 03. 2003 237 Primus 30<br />

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500<br />

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120<br />

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180<br />

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)<br />

Unzweckmäßiges Löschen von Attributen bei Löschung eines Tupels als<br />

semantische Einheit.<br />

(Die Firmeninformation "Lieferant Name" (10033 Bussard AG) geht beim<br />

Löschen der Bestellung verloren, obwohl möglicherweise bei diesem<br />

Lieferanten erneut bestellt wird.)


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 12<br />

Funktionale Abhängigkeiten<br />

Definition<br />

Ein Attribut A2 einer Relation R(A1,A2,...) heißt funktional abhängig vom<br />

Attribut A1 der Relation R, wenn zu jedem Wert a i (a i Є A1) höchstens ein Wert<br />

a k (a k Є A2) möglich ist.<br />

Beispiel:<br />

Artikelcode Bezeichnung Besteller<br />

0105 Zucker Meyer<br />

0105 Zucker Schulze<br />

0237 Mehl Meyer<br />

0105 Zucker Müller<br />

2356 Salz Moppel<br />

2356 Salz Meyer<br />

0105 Zucker Meyer<br />

Darstellung: Artikelcode Bezeichnung


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 13<br />

Volle funktionale Abhängigkeit<br />

Definition<br />

Ein Attribut A2 einer Relation R(A1.1,A1.2,...A2,...) heißt voll funktional abhängig<br />

von einer zusammengesetzten Gruppe von Attributen A1.n der Relation R,<br />

wenn A2 funktional abhängig von der Gruppe A1.n, nicht aber funktional abhängig<br />

von einem beliebigen Teilattribut A1.j ist.<br />

Beispiel:<br />

Artikelcode Bezeichnung Lieferer Datum kg<br />

0105 Zucker Meyer 12.04.2003 100<br />

0105 Zucker Schulze 12.04.2003 150<br />

0237 Mehl Meyer 18.04.2003 200<br />

0105 Zucker Müller 22.04.2003 50<br />

2356 Salz Moppel 29.04.2003 30<br />

2356 Salz Meyer 04.05.2003 50<br />

0105 Zucker Meyer 04.05.2003 75<br />

Darstellung:(Artikelcode, Lieferer, Datum) ⇒ kg


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 14<br />

Der Prozess der Normalisierung<br />

Das Normalisieren einer Relation (Tabelle) wird immer durch Aufteilung<br />

der Relation auf mehrere Relationen realisiert. Es wird so<br />

lange normalisiert, bis die nach der Aufteilung neu entstandenen<br />

Relationen der erwünschten Normalform entsprechen.<br />

Beispiel:<br />

Diese Relation<br />

befindet sich<br />

in 1NF<br />

Artikelcode Bezeichnung Lieferer Datum kg<br />

0105 Zucker Meyer 12.04.2003 100<br />

0105 Zucker Schulze 12.04.2003 150<br />

0237 Mehl Meyer 18.04.2003 200<br />

Diese Relationen befinden sich in 3NF<br />

Artikelcode Lieferer Datum kg<br />

0105 Meyer 12.04.2003 100<br />

0105 Schulze 12.04.2003 150<br />

0237 Meyer 18.04.2003 200<br />

Artikelcode Bezeichnung<br />

0105 Zucker<br />

0105 Zucker<br />

0237 Mehl


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 15<br />

1. Normalform (1NF) nochmals zur Wiederholung<br />

Alle Attribute müssen elementar ( auch: atomar) sein.<br />

Konsequenz: Es darf kein Attribute geben, die aus Listen oder ähnlichen<br />

zusammen gesetzen Werten bestehen.<br />

Negativbeispiel:<br />

BEWERTUNG(Matrikelnummer, Name, Vorname, SG, Notenliste)<br />

ist nicht in 1NF, wenn in Notenliste z. B. "1,3;2,0;2,3;1,3" steht.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 16<br />

2. Normalform (2NF)<br />

Volle funktionale Abhängigkeit der Nichtschlüsselattribute von<br />

allen aus mehreren Attributen zusammengesetzten Schlüsseln.<br />

Konsequenz: Es darf kein Attribut des zusammengesetzten Primärschlüssels<br />

entfernt werden, ohne dass dabei die funktionale Abhängigkeit<br />

jedes Nichtschlüsselattributs vom Primärschlüssel verloren geht.<br />

Negativbeispiel:<br />

BESTELUNG(Lieferantencode, ArtikelNr, Datum, Lieferer, Ort, Menge, Preis)<br />

Abhängigkeit Lieferantencode ,ArtikelNr, Datum ⇒ gilt nicht für alle Attribute.<br />

Aus Vereinfachungsgründen wir hier vorausgesetzt, dass ein Artikel bei dem<br />

gleichen Lieferanten nur einmal täglich bestellt werden kann.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 17<br />

3. Normalform<br />

Was sind transitive Abhängigkeiten?<br />

Definition: Wenn A B und B C,<br />

Beispiel:<br />

dann ist A C<br />

eine transitive Abhängigkeit<br />

A N R<br />

P re is<br />

L a g e r<br />

B e z<br />

O rt<br />

B e st<br />

.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 18<br />

3. Normalform (3NF)<br />

Ausschaltung transitiver funktionale Abhängigkeit zwischen<br />

einem Nichtschlüsselattribut und einem Schlüsselattribut.<br />

Konsequenz: Ein Nichtschlüsselattribut darf funktional nur vom Primärschlüssel<br />

und nicht von einem weiteren Nichtschlüsselattribut<br />

abhängig sein.<br />

Negativbeispiel:<br />

ARTIKEL(ArtikelNr, Bezeichnung, VK_Preis, Bestand, LagerNr, LagerOrt)<br />

Transitive funktionale Abhängigkeit: ArtikelNr ⇒ LagerNr ⇒ LagerOrt<br />

(allerdings nur unter der Voraussetzung, dass zu jeder Lagernummer<br />

immer nur genau ein Lagerort gehört).


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 19<br />

Fazit zur Normalisierungstheorie<br />

Nach den (theoretischen) Regeln der Normalisierung lässt sich<br />

eindeutig die Normalform einer Relation bestimmen.<br />

Relationen lassen sich folglich immer in 3NF normalisieren. Es<br />

gibt für spezielle Fälle jedoch noch weitere Normalformen (4NF,<br />

5NF) und Normalisierungsverfahren (z. B. Boyce Codd Normalform<br />

– BCNF).<br />

siehe dazu Elmasri/Navathe: "Grundlagen von Datenbanksystemen",<br />

Addison-Wesley 2002 oder Kudraß: “Taschenbuch<br />

Datenbanken“, Hanser 2007, S.92f.<br />

Aus betriebswirtschaftlicher (semantischer) Sicht führen typische<br />

Beziehungskonstellationen zu vorhersehbaren Normalisierungsproblemen.<br />

Bei Erkennen der typischen Beziehungskonstellation<br />

kann das daraus resultierende Normalisierungsproblem auch<br />

durch praktische Erfahrung gelöst werden siehe Folien 26, 27!


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 20<br />

Damit alles<br />

o. K. ?<br />

Leider nein !


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 21<br />

Ausgewählte Probleme der Normalisierung<br />

Obwohl die Normalisierung die grundlegende Methode zur Erzielung guter<br />

physischer Datenmodelle ist, ist sie nicht problemlos.<br />

Folgende 4 Probleme sollen näher beleuchtet werden:<br />

(1) Pseudo-Primärschlüssel täuschen 2NF vor bzw. erschweren das<br />

Erkennen transitiver Abhängigkeiten.<br />

(2) Ungeeignete Datentypen für Primärschlüssel führen zu<br />

Effektivitätsverlusten.<br />

(3) "Übernormalisierte" Relationen führen zu<br />

Effizienzverlusten und können unechte Tupel beim späteren<br />

Joining verursachen.<br />

(4) Nicht für jede Anwendung sind normalisierte Relationen die beste<br />

Lösung.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 22<br />

Ausgewählte Probleme der Normalisierung<br />

(1) Pseudo-Primärschlüssel täuschen 2NF vor.<br />

Durch das Hinzufügen einer laufenden Nummer kann ein künstlicher Primärschlüssel<br />

erzeugt werden. Formal befindet sich damit die Relation in 2NF, aber<br />

gut ist sie damit nicht.<br />

Beispiel: BESTELUNG(LiefererNr, ArtikelNr, Lieferer, Ort, Datum, Menge, Preis)<br />

wird durch Hinzufügen einer laufenden Nummer (LNR) zu<br />

BESTELUNG(Lnr, LiefererNr, ArtikelNr, Lieferer, Ort, Datum, Menge, Preis)<br />

Semantisch bedingte funktionale Abhängigkeiten werden dadurch möglicherweise<br />

erschwert wahrgenommen (nicht volle funktionale Abhängigkeit wandelt sich zur<br />

transitiven Abhängigkeit).<br />

LNR (laufende Nummerierung) hat bei richtiger Normalisierung häufig keinen<br />

Informationsgehalt mehr und kann gelöscht werden (Ausnahme: Reihenfolge der<br />

Tupel soll dokumentiert werden).<br />

Hier "greift" die BCNF (Boyce/Codd-Normalform) jede minimale Determinate<br />

muss ein Schlüsselkandidat sein.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 23<br />

Ausgewählte Probleme der Normalisierung<br />

(2) Ungeeignete Datentypen für Primärschlüssel führen zu Effektivitätsverlusten.<br />

Jeder Primärschlüssel führt bei der Implementierung des physischen<br />

Datenmodells auf ein Datenbank Manangement System (DBMS) zu einem<br />

Index (primary key und/oder foreign key), um Zugriffszeiten zu minimieren.<br />

Dieser soll speicheroptimal (kurz, einfacher Datentyp) sein.<br />

Beispiel: Student (Name, Vorname, GebDat, Studiengang, …)<br />

Der Primärschlüssel Name, Vorname, GebDat) ist nach der Normalisierungstheorie<br />

durchaus gültig, aber zu kompliziert zusammengesetzt und bei<br />

Datentypen wie z. B. Varchar(60) und Datetime entstehen daraus völlig<br />

ineffiziente Indizes.<br />

Besser ist hier das zusätzliche Hinzufügen eines prägnanten Kurzschlüssels, wie<br />

z. B. einer Immatrikulationsnummer mit Datentyp char(6) oder integer.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 24<br />

Ausgewählte Probleme der Normalisierung<br />

(3) "Übernormalisierte" Relationen führen zu Effizienzverlusten und können<br />

unechte Tupel beim späteren Joining verursachen.<br />

In der Präsentation der normalisierten Daten mittels Joining (siehe relationale<br />

Algebra) können sogenannte "unechte Tupel" entstehen, die falsche<br />

Informationen vortäuschen siehe dazu Elmasri/Navathe: "Grundlagen von<br />

Datenbanksystemen", Addison-Wesley 2002, Abschnitt 14.1<br />

Beispiel:Projekt (PersNr, Projektnr, Name, Stunden, Projektort)<br />

Diese Relation befindet sich nicht in 2NF, da Name nur von PersNr funktional<br />

abhängig ist. Das Projekt könnte aber an mehreren Standorten (Projektort)<br />

realisiert werden und ein Mitarbeiter kann an mehreren Standorten tätig sein.<br />

Eine Normalisierung<br />

PersProjekt (Persnr, Projektnr, Stunden, Projektort) und<br />

PersOrte (Name, Projektort)<br />

liefert Relationen in 3NF, wäre aber fatal fehlende Verbundtreue!


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 25<br />

Ausgewählte Probleme der Normalisierung<br />

(4) Nicht für jede Anwendung sind normalisierte Relationen die beste Lösung.<br />

Die Normalisierung ist eindeutig auf eine optimierte Datenspeicherung gerichtet<br />

(Vermeidung von Redundanzen und Anomalien, Sicherung der Integrität), nicht<br />

auf anwendungsabhängige Kriterien der Datennutzung.<br />

Bei DB-Anwendungen, wo die Optimierung der Datenspeicherung keine oder<br />

nur eine sehr untergeordnete Rolle spielt, kann bewusst auf die 3NF und<br />

höhere NFverzichtet werden.<br />

Man bezeichnet dies auch als denormalisierte Relation.<br />

Beispiel: Zeit (Zeitkey, Bezeichnung, Monat, Quartal, Jahr, Wochentag)<br />

Derartige Relationen werden häufig als "Dimensionstabellen" in Data Warehouse<br />

Modellen verwendet. Hier ist der schnelle Zugriff auf nur eine Datenbanktabelle<br />

wichtiger als ein Update, welches bei einmal richtigen Daten ohnehin nie mehr<br />

erforderlich ist.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 26<br />

Anhang zur Normalisierungstheorie<br />

zwei typische semantische Beziehungstypen (1)<br />

Ein- und mehrwertige Attribute in einer Relation, die ein Objekt<br />

beschreibt, führen immer zur Verletzung der 2NF.<br />

Sie müssen als Master-Detail-Beziehung immer mit zwei oder<br />

mehr Relationen beschrieben werden.<br />

Beispiel:<br />

<strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum, Artikel, Anzahl, Nettopreis)<br />

Die bestellten Artikel, ihre Bezeichnung und Anzahl sind ein Detail des<br />

Masters <strong>BESTELLUNG</strong>, das in einer Bestellung mehrfach vorkommen<br />

kann.<br />

Die Lösung: <strong>BESTELLUNG</strong> (Bestellung, Lieferant, Name, Datum)<br />

POSTEN (Bestellung, Artikel, Anzahl, Nettopreis)


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 27<br />

Anhang zur Normalisierungstheorie<br />

zwei typische semantische Beziehungstypen (2)<br />

Dynamische Domänen dienen zur Verwaltung eines sehr großen<br />

und/oder stark veränderlichen Wertevorrats für ein Attribut, dessen<br />

Konsistenz über die referentielle Integrität geprüft wird.<br />

Dynamische Domänen müssen deshalb immer in einer eigenen<br />

Relation verwaltet werden.<br />

Beispiel:<br />

<strong>BESTELLUNG</strong> (Bestellung, Artikel, Anzahl, Nettopreis)<br />

ARTIKELKATALOG (Artikel, Artikelbezeichnung)<br />

Artikel in der Tabelle <strong>BESTELLUNG</strong> ist ein Fremdschlüssel, der die<br />

referentielle Abhängigkeit von der Tabelle ARTIKELKATALOG widerspiegelt.<br />

Generell gilt aber:<br />

Semantische Beziehungen zwischen Objekten werden vorrangig in<br />

semantischen Datenmodellen (z. B. ERM) wirksam.


<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenmodellierung/Datenbanken (03)RDM-Normalisierung.ppt Folie 28<br />

Zusammenfassung zur Normalisierungstheorie<br />

Die Normalisierung von Relationen dient der optimalen Speicherung von<br />

Daten, unabhängig vom Verwendungszweck.<br />

Es gibt in der Theorie 5 Normalformen (5NF) sowie die zwischen der<br />

3NF und 4NF definierte Boyce-Codd-Normalform (BCNF).<br />

Für praktische Anwendungen der <strong>Wirtschaftsinformatik</strong> dominiert die<br />

3NF als Mindestanforderung.<br />

Der Verwendungszweck von Daten kann mit dem Ziel eines besonders<br />

schnellen Datenzugriffs zu häufig benutzen Zugriffsmustern führen.<br />

Sofern dieses Ziel eine höhere Priorität als die Datenmanipulation hat,<br />

kann eine Denormalisierung einzelner Relationen sinnvoll sein.<br />

Es gibt unterschiedliche theoretische Ansatzpunkte zur Methodik der<br />

Normalisierung. Ein in der <strong>Wirtschaftsinformatik</strong> häufig auftretender<br />

praktikabler Ansatz besteht im Erkennen von Master-Detail-Beziehungen<br />

und in der Verwendung dynamischer Domänen.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!