BESTELLUNG - Wirtschaftsinformatik HTW Berlin
BESTELLUNG - Wirtschaftsinformatik HTW Berlin
BESTELLUNG - Wirtschaftsinformatik HTW Berlin
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.