IS: Datenbanken, © Till Hänisch 2000 Entwurfstheorie Normalisierung oder "Wie man sich Ärger erspart"

Slides:



Advertisements
Ähnliche Präsentationen
Kapitel 6 Relationale Entwurfstheorie
Advertisements

Datenbankdesign mit ACCESS.
Datenbanken Beispiel: Musikverwaltungsdatenbank Daten: Musikstück
Datenbank – Datenbanksystem
Relationentheorie AIFB SS Transitive (funktionale) Abhängigkeiten Transitive (funktionale) Abhängigkeiten (1|3) Geg.: r: (U | F); A,
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
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.
Relationaler Datenbankentwurf (II)
Normalisierung II Lehr- und Forschungseinheit Datenbanken und Informationssysteme.
[01] - ERM Modellierung I Basiselemente von E-R-Diagrammen kennen
Normalisierung nach Edgar. F. CODD (1970)
Microsoft Access – Einführung – Allgemeine Technologien I
Das Entity-Relationship-Modell
Einführung in die Wirtschaftsinformatik
Datenbankdesign und Normalisierung
Blockseminar Allgemeine Technologien II März 2009
Daten bank St. Wiedemann.
Datensicherheit in DBMS
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
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.
Normalformen Normalisieren Schlüssel
6 Normalformen Normalisieren Schlüssel
Relationenmodell (RM)
Kapitel 11: Relationale Entwurfstheorie
© Katharina Brachmann Normalformen Oldenbourg S137, Klett S117
Relationentheorie AIFB SS Algorithmen zur Bildung von 3NF-Relationsschemata Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese.
Grundsätzliche Resultate Theorem: Für jeden Relationstyp R(A 1,...,A n ) und jede Menge von FDs über {A 1,...,A n } gibt es: –eine verlustlose (aber nicht.
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.
Relationentheorie AIFB SS Wir setzen: A 1 A 2 = B, A 1 = AB, A 2 = BC, mit A B= A C = B C = Damit ist: U = ABC Test auf Verlustfreiheit (Verbundtreue)
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.
Zerlegung und Konstruktion Frage 2: Welche Zerlegungen sind korrekt? Zerlegung ersetzt Relationstyp R(A 1,...,A n ) und Menge von assoziierten Abhängigkeiten.
Relationale Datenbankmodelle
Die Grundterminologie
Datenbank-entwicklungsprozess
Access 2000 Willkommen im Access-Kurs Oliver Mochmann.
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.
PHP und MYSQL am FUNKTIONEN (Wiederholung) Klassen Objekte Anwendungsbeispiele MYSQL Theorie mehrerer Tabellen Historisch Kulturwissenschaftliche.
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
ADAT©2004,2006 Dipl. - Ing. Walter SabinSeite: 47 Version 1.0a Normalisierung Optimierung des Datenmodells – möglichst wenig Redundanzen –Vermeidung von.
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.
Schlüssel Einordnung des Schlüsselbegriffs in Abhängigkeitstheorie:
1 Polymorphe Konsistenzbedingungen (1) Polymorphe Konsistenzbedingungen legen fest, welche Arten von Zustandsbeschränkungen nach einer Konkretisierung.
Relationentheorie  AIFB SS Schlüssel / Schlüsselattribute / Nichtschlüsselattribute (2|4) Algorithmus zur Bestimmung aller Schlüssel.
Abbildung UML-Schema  Rel. Schema (1)
Sichtenverbindung (1) Einschränkungen: Zwischen den verschiedenen Abhängigkeiten kann es zu komplizierten Wechselwirkungen kommen, so dass ein allgemeingültiges.
Relationentheorie  AIFB SS Zerlegung Zerlegung (1|6) 1.Die funktionalen Abhängigkeiten müssen erhalten bleiben („fA-erhaltend“). 2.Die.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #5 Relationale Entwurfstheorie.
Datenbanken Normalisierung
1 1.Man beginne mit „leicht erkennbaren natürlichen Objekten“ (Personen und konkreten Gegenständen) und fasse diese zu Objekttypen zusammen. (etwa Substantive.
Datenbanken Relationale Entwurfstheorie Ralf Möller Universität zu Lübeck Institut für Informationssysteme.
IS: Datenbanken, © Till Hänisch 2000 Company: Entity types DEPARTMENT Name, Number, {Location},Manager, Mgr-Start- Date PROJECT Name, Number, Location,
Kapitel 6 Relationale Entwurfstheorie Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition.
Veranstaltung: Datenbanken I Dozent: Ioannis Papakostas Belegarbeit 6 Online-Bestellung von Büchern Stefan Rüschenberg (Matrikel-Nr.: ) Sebastian.
IS: Datenbanken, © Till Hänisch 2000 Relationenalgebra Die mathematische Grundlage von relationalen Datenbanken.
SZ Neustadt, Delmestraße 141B, Bremen 1 Datenbanken Datenbank = Datenbankprogramm + Daten Datenbankprogramm = Datenbankmanagementsystem (DBMS) = System,
Anomalien und Normalformen. Was ist ein gutes Datenbankschema?
LK Informatik - Datenbanken Normalisierung von Datenbanken April/Mai 2004 (2009) Paul-Natorp-Oberschule.
Vorlesung #5 Relationale Entwurfstheorie
Logisches Datenmodell
Vorlesung #5 Überführung (Fortsetzung) / Normalformen
 Präsentation transkript:

IS: Datenbanken, © Till Hänisch 2000 Entwurfstheorie Normalisierung oder "Wie man sich Ärger erspart"

IS: Datenbanken, © Till Hänisch 2000 Hintergrund Vermeidung von Anomalien Redundanzen Ursprünglich von Codd (1971) 3 Normalformen später mehr Jede Stufe ist Verschärfung Normalisierung führt i.A. zur Aufspaltung von Relationen Verlustfreie Zerlegung, abhängigkeitsbewahrend,... z.B. [Elmasri]

IS: Datenbanken, © Till Hänisch 2000 Übersicht Alle Relationen 1. Normalform 2. Normalform 3. Normalform BCNF

IS: Datenbanken, © Till Hänisch 2000 Normalformen Regeln für guten DB-Entwurf kein "Kochbuch" "strenge" Normalisierung -> viele Relationen erfordert Wissen über Bedeutung der Attribute als Selbstzweck nicht erforderlich nicht (immer) sinnvoll (Performance, Aufwand bei Applikationsentwicklung, Zahl der Relationen,...) 1. Normalform Alle Attribute sind atomar

IS: Datenbanken, © Till Hänisch 2000 Functional dependencies B heißt funktional abhängig von A, wenn Beispiel: EMP(eno,ename,dno,dname) FDs: B voll funktional abhängig von A, wenn 1T42CS 2H42CS 3X42CS 4Y42CS

IS: Datenbanken, © Till Hänisch Normalform Alle Nicht-Schlüssel-Attribute sind voll funktional abhängig vom Schlüssel Beispiel: Angebot(Lieferant#,Artikel#, LieferantName) ist nicht in 2. NF, da Lieferant#  LieferantName NB: Wenn R in 1. NF und PK aus einem Attribut besteht, ist R immer in 2. NF NB: Zusätzlicher "künstlicher" Key sichert zwar immer 2. NF, löst aber nicht das Problem, Angebot(ID,Lieferant#,Artikel#, LieferantName) ist zwar in 2.NF, aber trotzdem problematisch, deshalb 3.NF

IS: Datenbanken, © Till Hänisch Normalform B heißt transitiv abhängig von A, wenn Keine transitiven Abhängigkeiten von Nicht-Schlüssel-Attributen alternative Formulierung

IS: Datenbanken, © Till Hänisch 2000 BCNF 3. NF betrifft nur Nicht-Schlüssel- Attribute, deshalb BCNF: Beispiel: Angebot(Lief#,LiefName,Artikel#,Menge) Annahme: LiefName sei eindeutig (LiefName,Artikel#) und (Lief#,Artikel#) sind candidate keys wir wählen (LiefName,Artikel#) als PK FDs:... Lief#  LiefName, Lief# ist aber nicht Teil des PK !! exotisch Höhere Normalformen (4., 5., MVD,...): Literatur

IS: Datenbanken, © Till Hänisch 2000 Zerlegung (decomposition) Wie erhält man normalisierte Relationen ? R(X,Y) R 1 (X)R 2 (Y) |X| R'(X,Y) XX YY R=R' ? Wenn ja, dann verlustfrei (lossless) i.A. nicht, d.h. R  R' !!! i.A. R'  R, es entstehen neue Tupel

IS: Datenbanken, © Till Hänisch 2000 Beispiel R(A,B,C) a b c a' b c' a bb c a' b b c' |X| a b c a b c' a' b c a' b c'  AB  BC ??? R  R' !!!

IS: Datenbanken, © Till Hänisch 2000 Wie soll zerlegt werden ? Behauptung: Beispiel: EMP(eno,ename,dno,dname) FDs: eno  ename eno  dno dno  dname (verletzt 3. NF, also Zerlegung da dno  dname, sollte X  Y=dno sein, also EMP'(eno,ename,dno), DEPT(dno,dname) "Zerlegung entlang FDs"

IS: Datenbanken, © Till Hänisch 2000 Normalisierung NormalformTestAbhilfe 1. NFRelation sollte keine mehrwertigen Attribute haben Neue Relation für jedes mehrwertige Attribut 2. NFBei Relationen mit zusammengesetztem PK sollte kein Attribut von einem Teil des Schlüssels funktional abhängig sein Zerlegung, neue Relation für jeden Teil des Schlüssels mit den abhängigen Attributen. (Achtung: Beziehung zum PK der ursprünglichen Relation und allen abhängigen Attributen muß erhalten bleiben) 3. NFKein Nicht-Schlüsselattribut sollte von einem anderen Nicht-Schlüsselattribut funktional abhängig sein Zerlegung, neue Relation mit den Nicht- Schlüsselattributen und ihren abhängigen Attributen

IS: Datenbanken, © Till Hänisch 2000 Zusammenfassung "Your attributes shall depend on the key, the whole key and nothing but the key so help me Codd" (Usenet, comp.databases.oracle, Autor unbekannt)