Prof. Dr. T. Kudraß1 Logischer DB-Entwurf. Prof. Dr. T. Kudraß2 Entwurf eines relationalen DB-Schemas Ziel: –Regeln für die Umsetzung eines ER-Modells.

Slides:



Advertisements
Ähnliche Präsentationen
Datenmodellierung.
Advertisements

Datenbankdesign mit ACCESS.
Datenbanken Beispiel: Musikverwaltungsdatenbank Daten: Musikstück
Datenbank – Datenbanksystem
Mehrwertige Abhängigkeiten (1)
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
Das Entity-Relationship-Modell
Relationaler Datenbankentwurf (II)
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
[01] - ERM Modellierung I Basiselemente von E-R-Diagrammen kennen
Normalisierung nach Edgar. F. CODD (1970)
Das Entity-Relationship-Modell
Grundlagen Datenbanken
Datenbankdesign und Normalisierung
Daten bank St. Wiedemann.
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Das Relationen-Modell
Relationaler Datenbankentwurf (I)
Das Relationenmodell 1.
Das Entity-Relationship-Modell
Prof. Dr. T. Kudraß1 Das Relationen-Modell. Prof. Dr. T. Kudraß2 Einführung Geht auf klassische Arbeit von Codd zurück (1970) Meistgenutztes Datenmodell.
Prof. Dr. T. Kudraß1 DB-Tuning. Prof. Dr. T. Kudraß2 Tuning des konzeptuellen Schemas Das Design des konzeptuellen Schemas ist beeinflußt durch das Lastprofil.
Prof. Dr. T. Kudraß1 Relationenkalkül. Prof. Dr. T. Kudraß2 Relationenkalkül Zwei Ausprägungen: Tupelrelationenkalkül (TRK) und Domänenrelationenkalkül.
Prof. Dr. T. Kudraß1 Relationen-Algebra. Prof. Dr. T. Kudraß2 Relationale Anfragesprachen Query Language (QL): Manipulation und Retrieval von Daten einer.
Normalformen Normalisieren Schlüssel
6 Normalformen Normalisieren Schlüssel
Relationenmodell (RM)
November 2002.
Kapitel 11: Relationale Entwurfstheorie
© Katharina Brachmann Normalformen Oldenbourg S137, Klett S117
Buch S70ff (Informatik I, Oldenbourg-Verlag)
Relationentheorie AIFB SS a c d b e Beispiel 1-13: s:(U | F) U = {a, b, c, d, e}; F = {ab c, c d, b e} Dritte Normalform (3NF) Dritte.
Algorithmus zur Zerlegung in 3NF (1)
Anomalien Nichtreflexive MVDs (und somit speziell auch nichtreflexive FDs) sind unerwünscht, da sie bei Schreibzugriffen sogenannte Anomalien verursachen.
Wintersemester Ist das derzeit wichtigste Datenmodell Wurde von Codd E.F. in den 70ern entwickelt Konsistenzprobleme werden durch einen Normalisierungsprozess.
Die Grundterminologie
Schlüssel von Beziehung(styp)en (1|5)
Datenbank-entwicklungsprozess
SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R Vorlesung #5 Relationale Entwurfstheorie.
Normalisierung Referat zur Veranstaltung: Datenbanktechnologie, mit praktischen Übungen in eXist und XQuery Datum: 18. April 2011 (3.Sitzung) Dozent: Daniel.
Kapitel 6 Relationale Entwurfstheorie
SS 2011 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #5 Relationale Entwurfstheorie.
SS 2009 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung Normalformen.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Das relationale Modell
verstehen planen bearbeiten
Normalisierungsprozess
Voll funktionale Abhängigkeiten (4)
Structured Query Language
Dritte Normalform Relationstyp R(A1,...,An) und Menge  von FDs und MVDs für R sei im Folgenden fest vorgegeben. R ist in dritter Normalform (3NF), wenn.
Grundlagen des Relationenmodells
Schlüssel Einordnung des Schlüsselbegriffs in Abhängigkeitstheorie:
Relationentheorie  AIFB SS Schlüssel / Schlüsselattribute / Nichtschlüsselattribute (2|4) Algorithmus zur Bestimmung aller Schlüssel.
ER-Modell Attribute, Attributwerte (1|8) Attribut (a): Eigenschaft a = Name des Attributes E : Ein Entity-Typ E wird charakterisiert.
Wiederholung Der wichtigste Befehl zur Datenmanipulation lautet:
Rel-Modell Schema (3|8) Beispiel 8-12: Rel. Datenbank-Schema (beispielhaft) für eine rel. DB mit den Relationen angestellte1, projekt1.
Semantische Integritätsbedingungen  AIFB SS trigger-Klausel (2/5) Beispiel 3-5: Angestellter: (Ang-Nr, Ang-Name, Gehalt,Familienstand, Abt-Bez).
Relationentheorie  AIFB SS Funktionale Abhängigkeiten – Definition und Eigenschaften U Attributmenge; A, B, …  U r: (U | F) Relation über U.
Rel-Modell Fremdschlüssel (1|3) Attribute: P-NR, ANG-NRin ang-pro1 P-LEITERin projekt1 ABT-NRin angestellte1 r 1 r 2... FS PS  P-NR.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #5 Relationale Entwurfstheorie.
Datenbanken Normalisierung
ER-Modell Gegeben E: Jedes Entity eines Typs ist eindeutig durch das zugeordnete Tupel beschrieben. (sonst wäre A nicht charakteristisch [genug]
IS: Datenbanken, © Till Hänisch 2000 Entwurfstheorie Normalisierung oder "Wie man sich Ärger erspart"
IS: Datenbanken, © Till Hänisch 2000 Company: Entity types DEPARTMENT Name, Number, {Location},Manager, Mgr-Start- Date PROJECT Name, Number, Location,
© \\//_ Datenbankentwurf. © \\//_ Gliederung 1.Das Entity-Relationship-ModellDas Entity-Relationship-Modell 2.Transformation ins relationale Modell (Tabellen)Transformation.
LK Informatik - Datenbanken Normalisierung von Datenbanken April/Mai 2004 (2009) Paul-Natorp-Oberschule.
SQL Basics Schulung –
Vorlesung #5 Relationale Entwurfstheorie
Vorlesung #5 Überführung (Fortsetzung) / Normalformen
 Präsentation transkript:

Prof. Dr. T. Kudraß1 Logischer DB-Entwurf

Prof. Dr. T. Kudraß2 Entwurf eines relationalen DB-Schemas Ziel: –Regeln für die Umsetzung eines ER-Modells in ein Relationenschema –theoretische Grundlagen für den Entwurf eines guten relationalen DB-Schemas Normalisierungslehre Entwurfstheorie Was macht einen schlechten DB-Entwurf aus? –Redundanzen –schlechte Handhabbarkeit –Löschanomalien –Potentielle Inkonsistenz (Änderungsanomalien) –Einfügeanomalien Oft hervorgerufen durch Vermischung von Entities Normalisierung von Relationen –Hilft, einen gegebenen Entwurf zu verbessern

Prof. Dr. T. Kudraß3 Funktionale Abhängigkeiten Funktionale Abhängigkeit (Functional Dependency) FD Die FD X Y gilt (X bestimmt Y funktional), wenn für alle Relationen r des Relationenschemas R gilt: Zwei Tupel, deren Wert in X übereinstimmt, stimmen auch in Y überein. X und Y sind Mengen von Attributen. Formal: u R v R (u[X] = v[X]) (u[Y] = v[Y]) Graphische Notation Abhängigkeitsdiagramme: PNR NAME BERUF PNR PROJNR DAUER

Prof. Dr. T. Kudraß4 Grundbegriffe bei funktionalen Abhängigkeiten Triviale FD: X X Volle funktionale Abhängigkeit: A1, A2,...., An B1, B2,..., Bm B = { B1, B2,..., Bm } ist voll funktional abhängig von A = {A1, A2,..., An}, wenn B funktional abhängig von A, aber nicht funktional abhängig von einer echten Teilmenge von A ist. Beispiel: PNR PROJNR DAUER A B ist eine partielle Abhängigkeit, wenn ein Attribut Ai in A existiert, so daß ( A - {Ai}) B gilt: Beispiel: PNR PROJNR NAME

Prof. Dr. T. Kudraß5 Ableiten von funktionalen Abhängigkeiten (Inferenz) Implikation: Aus einer einer Menge von gegebenen FDs F können meist weitere FDs f abgeleitet werden: –angestellter stufe, stufe gehalt impliziert angestellter gehalt –F + = Hülle (closure) von F ist die Menge aller FDs, die durch F impliziert werden Armstrongsche Axiome (X, Y, Z sind Mengen von Attributen): –Reflexivität: Wenn X Y, dann X Y –Erweiterbarkeit: Wenn X Y, dann XZ YZ für beliebige Z –Transitivität: Wenn X Y und Y Z, dann X Z Armstrongsche Axiome sind klare und vollständige Inferenzregeln für FDs!

Prof. Dr. T. Kudraß6 Unnormalisierte Relation Beispiel: ANG-U (ANGNR, NAME, ORT, ABTNR, ABTNAME, PROJNR, PROJNAME, DAUER) 3740KunzK 35Produktion 4711 MM-PC PII-BOARD HinzM 40 Forschung4711 MM-PC PII-BOARD Chipsatz Jansen B 35 Produktion 4711 MM-PC Chipsatz 12 enthält Attribute, die selbst aus Werten zusammengesetzt sind Vorteile: –Clusterbildung –Darstellung von komplexen Objekten (hierarchische Sichten) Nachteile –hohe Redundanzen (bei n:m-Beziehungen) –erhöhter Speicherplatzbedarf –erschwerte Handhabung durch unterschiedliche Anzahl von Elementen –Anomalien bei Aktualisierung

Prof. Dr. T. Kudraß7 Anomalien Einfüge-Anomalie Bei Einfügen neuer Projekte können Informationen darüber nicht gespeichert werden, solange es keine Angestellten zu diesem Projekt gibt; ANGRNR ist Primärschlüssel in ANG-U Änderungs-Anomalie Eine Abteilung erhält neue Aufgaben und wird daher umbenannt. Gesamte Relation muß durchsucht, und es müssen u.U. zahl- reiche Sätze geändert werden, obwohl sich nur eine Information ändert. Lösch-Anomalie Bei Beendigung von Projekten (z.B. 4711, 4713) sollen die Informationen hierüber gelöscht werden. Wenn ein Angestellter (z.B. Kunz) nur an diesen Projekten beteiligt war, gehen automatisch auch die Informationen über diesen Angestellten verloren.

Prof. Dr. T. Kudraß8 1. Normalform Alle Attributwerte sind atomar (d.h. bestehen nicht aus mehreren Elementen). ANG-1 (ANGNR, NAME, ORT, ABTNR, ABTNAME, PROJNR, PROJNAME, DAUER) 3740KunzK 35Produktion 4711 MM-PC KunzK35Produktion4713PII-Board HinzM 40 Forschung4711 MM-PC HinzM40Forschung4713 PII-BOARD HinzM40Forschung4715Chipsatz Jansen B 35 Produktion 4711 MM-PC Jansen B35Produktion4715 Chipsatz 12 Vorteile: –Wegfall mehrwertiger Attribute Nachteile –gleiche Nachteile wie bei unnormalisierter Relation (Anomalien etc.)

Prof. Dr. T. Kudraß9 2. Normalform (2NF) Eine Relation ist in 2. Normalform (2NF), wenn sie in 1NF ist und jedes Nicht-Schlüsselattribut voll funktional abhängig ist vom Primärschlüssel. Beispiel: ANGR NAME (ANGR, PROJNR) PROJNAME /Projekt-Nr. allein bestimmt den Projektnamen, keine volle funktionale Abhängigkeit / Vorgehensweise: 1.Lagere alle Attribute aus der ursprünglichen Relation aus, die nicht voll funktional abhängig vom gesamten Primärschlüssel sind. 2.Definiere für jede logisch zusammengehörige Attributkombination (idealerweise = Entity-Typ) eine neue Relation. 3.Mache für jede gefundene Attributkombination, die von einem Schlüsselteil abhängt, diesen Schlüssel zum Primärschlüssel der neuen Relation.

Prof. Dr. T. Kudraß10 2. Normalform (Beispiel) ANG-2 (ANGNR, NAME, ORT, ABTNR, ABTNAME) 3740KunzK 35Produktion 3817 HinzM 40 Forschung 3819 Jansen B 35 Produktion ANGPROJ (ANGNR, PROJNR, DAUER) ^^^^12 PROJEKT (PROJNR, PROJNAME) 4711MM-PC 4713PII-BOARD 4715Chipsatz

Prof. Dr. T. Kudraß11 3. Normalform (3NF) Eine Relation ist genau dann in 3. Normalform (3NF), wenn sie in 2NF ist und keine transitiven Abhängigkeiten aufweist. –3NF ist verletzt, wenn es eine funktionale Abhängigkeit N A gibt, mit N, A = Nichtschlüsselattribut. Somit gilt auch X N A (mit X=Primärschlüssel), da Relation in 2 NF ist. Beispiel: ANGNR ABTNR ABTNAME Vorgehensweise: 1.Lagere zunächst alle Nichtschlüsselattribute aus der ursprüng- lichen Relation aus, die funktional von Nichtschlüsselattributen abhängen. 2.Definiere für jedes Nichtschlüsselattribut, von dem andere Nichtschlüsselattribute abhängen, eine neue Relation. 3.Mache das Nichtschlüsselattribut, das die anderen Nichtschlüssel- attribute bestimmt, zum Primärschlüssel der neuen Relation. 4.Lasse den Primärschlüssel der neuen Relation als Fremdschlüssel in der ursprünglichen Relation bestehen.

Prof. Dr. T. Kudraß12 3. Normalform (Beispiel) ANG-3 (ANGNR, NAME, ORT, ABTNR) 3740KunzK HinzM Jansen B 35 ABTEILUNG (ABTNR, ABTNAME) 35Produktion 40Forschung ANG-PROJPROJEKT (ANGNR, PROJNR, DAUER) (PROJNR, PROJNAME) MM-PC PII-BOARD Chipsatz

Prof. Dr. T. Kudraß13 Abschließende Bemerkungen Rekonstruktion der ursprünglichen Daten und Beziehungen mittels Verbund (Join) möglich. Nachteil von Normalisierung: hoher Verknüpfungsaufwand bei übergreifenden Anfragen (Performance). Weitere ^Normalformen in der Literatur beschrieben (z.B. Boyce-Codd-Normalform) –höhere Normalformen in der Praxis nicht relevant