Introduction to Data and Knowledge Engineering

Ähnliche Dokumente
2. Übungsblatt 3.0 VU Datenmodellierung

Datenbanksysteme Übungsblatt 1

Kapitel 7: Formaler Datenbankentwurf

Normalformen: Sinn und Zweck

Relationale Entwurfstheorie (Teil 2)

Datenbanken 6: Normalisierung

2. Übungsblatt 3.0 VU Datenmodellierung

Software-Engineering Einführung

Relationale Entwurfstheorie. Kapitel / 510

Tag 4 Inhaltsverzeichnis

Grundlagen: Datenbanken WS 15/16

Design Theorie für relationale Datenbanken

2. Übungsblatt 3.0 VU Datenmodellierung

3. Übungszettel (Musterlösung)

Tag 4 Inhaltsverzeichnis

Kapitel 3: Datenbanksysteme

3. Übungsblatt (Testatwoche: Mai 2010) Einführung in Datenbanksysteme Datenbanken für die Bioinformatik

Funktionale Abhängigkeiten

7. Übung - Datenbanken

4. Normalisierung von Relationenschemata

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

Musterlösung zur Finalklausur Datenbanksysteme am

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 18. Juni 2007

Vorlesung Datenbank-Entwurf Klausur

Einführung in Datenbanken - Wiederholung Normalformen - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung

Datenbanken 1 Sommersemester 2014/

Klausur zur Vorlesung Datenbanken I im Wintersemester 2011/12

Aufgabe 1) Übung 4: 1.2

Datenbanken. Sommersemester 2010 Probeklausur

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung

Vorkurs Mathematik 1

3. Das Relationale Datenmodell

Lösung Probeklausur. Datenbanken und Informationssysteme. Sommersemester Datenbanken und

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Aufgabe 1: Kanonische Überdeckung

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Daten Bank. 5. Vorlesung

Grundlagen von Datenbanken SS 2010

Datenbanken: Relationales Datenbankmodell RDM

Datenbanksysteme Teil 3 Indizes und Normalisierung. Stefan Maihack Dipl. Ing. (FH) Datum:

Kapitel 06 Normalisierung von Relationen. 6 Die Normalisierung von Relationen

Grundlagen der Technischen Informatik. 8. Übung

TECHNISCHE UNIVERSITÄT DRESDEN Fakultät Wirtschaftswissenschaften Prof. Dr. W. Esswein Lehrstuhl Wirtschaftsinformatik, insbesondere Systementwicklung

Grundlagen der Technischen Informatik. 7. Übung

Grundlagen Datenbanken

Erstellen von relationalen Datenbanken mit Hilfe der Nomalisierung

Klassenstufen 7, 8. Aufgabe 1 (6+6+8 Punkte). Magischer Stern:

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Aufgaben und Lösungen Ausarbeitung der Übungsstunde zur Vorlesung Analysis I

Kapitel DB:IV (Fortsetzung)

Introduction to Data and Knowledge Engineering Tutorium 2. August 18, 2010 KE TUD TL 1

DV-Organisation und Anwendungsentwicklung. 4. Klausur

Einführung Datenbanken: Normalisierung

Datenbanken und Informationssysteme Sommersemester 2012 Probeklausur

Vorlesung Datenbanken II A Klausur

Fachbereich Wirtschaftswissenschaften Campus Sankt Augustin

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Vorlesung Datenbanken I Endklausur

Kapitel 11: Relationale Entwurfstheorie

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig)

Nicht Relationale Datenbanken. Nachteile des Relationenmodells

Theorie zur Übung 8 Datenbanken

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert

Binärzahlen. Vorkurs Informatik. Sommersemester Institut für Informatik Heinrich-Heine-Universität Düsseldorf

Bearbeite die folgenden Aufgaben mit Hilfe der Lerneinheit im Internet. Notiere Deine Lösungen auf dem Arbeitsblatt.

Lineare Algebra I. Auswahlaxiom befragen. (Wer schon im Internet danach sucht, sollte das auch mal mit dem Begriff

Übungen Teil 1: Normalisierung. Dozent: Stefan Maihack Dipl. Ing. (FH)

Mathematik II für Inf und WInf

Frage 8.3. Wozu dienen Beweise im Rahmen einer mathematischen (Lehramts-)Ausbildung?

1 Zahlentheorie. 1.1 Kongruenzen

Elementare Beweismethoden

2 Die Menge der ganzen Zahlen. von Peter Franzke in Berlin

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Übung zur Vorlesung Algorithmische Geometrie

Relationaler Datenbankentwurf

Daten Bank. 5. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014

Aufgaben zu geometrischen Grundbegriffen 1

Konzeptueller Entwurf

Rückblick: Datenbankentwurf

TECHNISCHE UNIVERSITÄT DRESDEN Fakultät Wirtschaftswissenschaften Prof. Dr. W. Esswein Lehrstuhl Wirtschaftsinformatik, insbesondere Systementwicklung

Äquivalenzrelation Restklassen Teilbarkeit in Z Kleiner Satz von Fermat Satz von Euler Eulersche ϕ-funktion

Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem:

Logischer Entwurf von Datenbanken

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0

Vervollständigung Lateinischer Quadrate

Wasser da$ \sie Ö{se. Maße hei# Schluss-$: $ an Stelle des $ kurzer Anstrich für \s: \ an Stelle des \ langer Anstrich für {s: { an Stelle des {

Aufgabe 1 Indexstrukturen

Jeweils am Montag um 18:30 treffen sich Studenten in Seminarraum 3 zum gemeinsamen Lernen.

3. Spezielle ER-Modelle und Tabellenableitung

30. Satz des Apollonius I

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join

Klausur Datenbanken. Fachhochschule Furtwangen, WS 08/09,

1 Mengen. 1.1 Definition

FACHHOCHSCHULE MANNHEIM. Hochschule für Technik und Gestaltung. Beispielklausur zur Vorlesung:

6.1.2 Bem.: Für Vierecke ist der Begriff Innenwinkel im allgemeinen nicht sinnvoll. Skizze.

Mitten-Dreiund Vier-Ecke

Einführung in die Theoretische Informatik

Transkript:

Introduction to Data and Knowledge Engineering Sommersemester 2015 Robert Rehner Tutorium 5: Syntheseverfahren Lösungsvorschlag Aufgabe 5.1: Verbundtreue Angenommen, Sie haben eine Relation R = ABCDEF mit F = {A CD, B EF}. Der einzige Schlüsselkandidat ist {A, B}. Die Relation verletzt dann aber die 2NF (machen Sie sich dies noch einmal klar, wenn das nicht ersichtlich ist). Eine offensichtliche Lösung ist, R in 2 Relationen aufzuspalten: R 1 = ACD und R 2 =BEF. Warum ist dies keine sinnvolle Lösung? Lösungsvorschlag: Die Lösung verletzt die Verbundtreue. Man kann aus R 1 und R 2 nicht so einfach R zurückgewinnen. Klarmachen kann man sich dies an folgendem Beispiel: Die Aufspaltung ergibt: A B C D E F 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 A C D B E F 1 3 4 2 5 6 7 9 10 8 11 12 13 15 16 14 17 18 19 21 22 20 23 24 Diese beiden Relationen lassen sich nicht mehr so einfach zu der ursprünglichen Relation zusammenführen, denn die Information, dass A=1 und B=2 in eine Zeile gehören, ist verloren gegangen. Stand: 30.04.2015 16:20 1

Aufgabe 5.2 Vereinfachtes Syntheseverfahren mit Dummy-FD Ein Datenbank-Admin hat von einem Unternehmen den Auftrag erhalten, eine existierende, komplexe Datenbank hinsichtlich besserer Strukturierung zu optimieren. Unter den zahllosen Tabellen innerhalb der Datenbank, hat er eine Tabelle in Augenschein genommen, welche geradezu prädestiniert ist, optimiert zu werden. Der DB-Admin erinnert sich an jene Tage seines Studiums an der TU Darmstadt, als er in einer DKE Vorlesung ein Verfahren erlernt hatte, welches ermöglicht Relationen-Schemata algorithmisch zu zerlegen um damit höhere Normalformen zu erreichen. Die Tabelle um die es geht, hat folgendes Schema (ohne Angabe der Schlüssel): TicketID TransactionNr CustomerOp AccountMngrOp ItemTitle ItemID Zwecks Lesbarkeit vereinfachen wir das unübersichtliche Relationen-Schema zu der folgenden abstrahierte Form: A B C D E F Weiterhin sei bekannt, dass innerhalb der Tabelle folgende funktionale Abhängigkeiten existieren: AE BD B D CD A CE DF DFB CE Gehen Sie nun wie folgt vor, bestimmen Sie zunächst sämtliche Schlüsselkandidaten, welche für das gegebene Relationenschema in Frage kommen, sowie die höchste vorliegende Normalform (max. 3 NF). Wenden Sie anschließend das vereinfachte Syntheseverfahren mit Dummy-FD an, wie in Lösung zu Übung 4 beschrieben. Überlegen Sie sich, wozu die Dummy-FD gebraucht wird. Prüfen Sie im Anschluss daran, ob das Ergebnis die 3 NF erfüllt. Ist dies nicht der Fall, so geben Sie bitte an, weshalb nicht und wie sich dies reparieren lässt. Erklären Sie wie die Begriffe Aufspalten von Relationen, Ausgangsrelation sowie Informationsverlust miteinander zusammenhängen. Stand: 30.04.2015 16:20 2

Lösungsvorschlag: Schlüsselkandidaten Zunächst betrachten wir die transitive Hülle, um daraus herleiten zu können, welche Attributemengen als Schlüsselkandidaten in Frage kommen. Linke Seite Bestimmt Attribute AE A B D E B B D CD A C D CE A B C D E F BDF A B C D E F Triviale Abhängigkeiten sind in blau. Gegebene Abhängigkeiten sind rot, transitiv daraus abgeleitete grün. Es fällt auf das die Superschlüssel CE sowie BDF alle anderen Nichtschlüsselattributen funktional bestimmen. Da jedoch das Attribut D in BDF überflüssig ist, ergibt sich für die Menge der Schlüsselkandidaten SK insgesammt: SK = {{B, F}, {C, E}, {A, E, F}} Es stellt sich hier die jedoch Frage, warum D in BDF überflüssig ist? Hierfür müssen wir die Attributhülle von BF genauer betrachten: Die trivialen Abhängigkeiten sind: B und F. Über B erreichen wir D und können anschließend mit CD auch noch A erreichen, sowie über DFB auch E, sodass insgesamt sämtliche Nichtschlüsselattribute von BF ohne Zuhilfenahme von D bestimmt werden können: Linke Seite Bestimmt Attribute BF A B C D E F Damit kann D aus BDF entfernt werden. Als Abkürzung kann man hier auch sehen, dass D von B alleine bestimmt wird (FD B D) und somit D auf der linken Seite BDF überflüssig ist. Weiterhin ist AEF ein Schlüsselkandidat. AEF taucht zwar nirgends auf der linken Seite auf, dies ist jedoch keine Voraussetzung für einen Schlüsselkandidaten. Es stellt sich die Frage, wie man aus der Menge aller möglichen Kombinationen genau AEF findet: Ausgehend von AE ABDE fehlen für einen SK noch C und F. Nähme man C hinzu, erhielte man ACE, welcher aber nicht minimal ist (CE reicht aus). Nimmt man F hinzu, erhält man mit DFB CE das noch fehlende C. Für die anderen Attributmengen, die fast die gesamte Attributmenge bestimmen probiert man Ähnliches, erhält aber keine weiteren Schlüsselkandidaten. Normalform vorher Die höchste vorliegende Normalform ist in diesem Fall: 2 NF. Grund: Für die Wahl von {C, E} als Primärschlüssel hängen alle Attribute vollständig von vom Primärschlüssel ab. B ist transitiv von {C, E} abhängig. Syntheseverfahren Wähle Schlüsselkandidat: {C, E} Linke Seite Bestimmt Attribute AE A B D E B B D CD A C D CE A B C D E F BDF A B C D E F ABCDEF δ Stand: 30.04.2015 16:20 3

1. Entfernen überflüssiger Attribute In BDF ist D überflüssig (wurde bereits gezeigt). In ABCDEF ist ABDF überflüssig (weil wir {C,E} als Schlüssel gewählt haben). 2. Entfernen überflüssiger FDs Die einzige FD, die im gegebenen Szenario überflüssig ist lautet: AE D (wegen Transitivität AE B, B D). 3. Identische linke Seiten zusammenfassen CE δ, CE DF 4. Äquivalente linke Seiten zusammenfassen CE δ, CE DF, BF CE (CE DF, CD A, AE BD und BF CE) AE B B D CD A 5. Bilden der Relationenschemata R 1 = (BCDEF, {{B, F}, {C, E}} R 2 = (ABE, {{A, E}} R 3 = (BD, {{B}} R 4 = (ACD, { {C, D}} Frage: Wofür wird die Dummy-FD genau benötigt? Die Hinzunahme einer Dummy-FD ist im Grunde ein Trick, um die Verbundtreue wiederzustellen, welche bei dem vereinfachten Syntheseverfahren aufgelöst kann. Ist die Synthese abgeschlossen, kann die Dummy-FD wieder entfernt werden. Frage: Muss die Dummy-FD immer mitgeführt werden? Prinzipiell schadet es nie die Dummy-FD zu verwenden. Falls diese überflüssig ist, wird diese mit den FDs, die eine äquivalente linke Seite haben zusammengefasst und führt damit nicht zu der Bildung einer neuen Relation. Normalform nachher Für die Wahl von {B,F} als Primärschlüssel von R 1 ist die 2NF verletzt (da D nur partiell abhängig). Dann müsste man D aus R 1 entfernen. Das Ergebnis ist nicht in 3 NF. Für die Wahl von {C,E} als Primärschlüssel ist z.b. D transitiv abhängig (CE DF, CD A, AE B, B D). Es ist dabei unerheblich, dass A in R 1 gar nicht vorkommt. Es gibt mehr als einen Weg von CE zu D, was zu Inkonsistenzen führen kann. Man müsste R 1 weiter aufspalten, z.b. BF und D trennen. Erklären Sie wie die Begriffe Aufspalten von Relationen, Ausgangsrelation sowie Informationsverlust miteinander zusammenhängen. Beim Aufspalten von Relationen ist es natürlich wichtig, dass die Transformation verlustlos verläuft, d.h. dass die Ausgangsrelation durch eine Anfrage wiederhergestellt werden kann, sodass kein Informationsverlust entsteht. Stand: 30.04.2015 16:20 4

Aufgabe T-5.3: Vereinfachtes Syntheseverfahren und Normalformen Sei R = ABCDEFGH eine Relation und F = {AB CD, DE AB, AC F, BF EG, E C, G H, H BF} eine Menge FDs über dieser Relation. Bestimmen Sie die höchste vorliegende Normalform und wenden Sie das vereinfachte Syntheseverfahren mit Dummy-FD an. Überprüfen Sie nochmals, ob das Ergebnis die 3NF erfüllt. Falls nein, wie müssen die Relationenschemata verändert werden um die 3NF zu erfüllen? Hinweis: Diese Aufgabe ist komplex und soll das Verständnis vertiefen. Es wird empfohlen, diese Aufgabe erst zu bearbeiten, wenn Sie das Syntheseverfahren prinzipiell verstanden haben. Lösungsvorschlag: Schlüsselkandidaten: AB CD, AC F, BF EG, E C, G H, H BF AB ABCDEFGH DE AB, AB CD, AC F, BF EG, E C, G H, H BF DE ABCDEFGH AC F AC ACF BF EG, E C, G H, H BF BF BCEFGH E C E EC G H, H BF, BF EG, E C G BCEFGH H BF, BF EG, E C H BCEFGH Schlüsselkandidaten SK = {{A, B}, {D, E}, {A, G}, {A, H}, {B, D, F}, {D, G}, {D, H}} Höchste vorliegende Normalform: 1. NF: Nur atomare Attribute erfüllt 2. NF: C und H sind nur partiell von einigen Schlüsselkandidaten abhängig aber: mit AB als Primärschlüssel gibt es keine partiellen Abhängigkeiten vom Primärschlüssel 2. NF erfüllt 3. NF: mehrere transitive Abhängigkeiten bei allen Schlüsselkandidaten (siehe letzte Folie) 3. NF nicht erfüllt Stand: 30.04.2015 16:20 5

Vereinfachte Syntheseverfahren mit Dummy-FD FD-Menge F erweitert mit der Dummy-FD: F = {AB CD, DE AB, AC F, BF EG, E C, G H, H BF, ABCDEFGH δ} 1. überflüssige Attribute entfernen: CDEFGH in ABCDEFGH δ (mehrere Möglichkeiten: statt AB könnte auch ein anderer Schlüsselkandidat übrig bleiben) 2. überflüssige FDs entfernen: keine 3. FDs mit identischer linker Seite zusammenfassen: AB CD, AB δ DE AB AC F BF EG E C G H H BF 4. Äquivalente linke Seiten zusammenfassen: AB CD, AB δ, DE AB AC F BF EG, G H, H BF E C 5. Relationen bilden: R 1 : (ABCDE, {{A, B}, {D, E}}) R 2 : (ACF, {{A, C}}) R 3 : (BEFGH, {{B, F}, {G}, {H}}) R 4 : (EC, {{E}}) 3. Normalform erfüllt? Für die Wahl von {A, B} als Primärschlüssel ist die 3. NF in R 1 verletzt, da in C transitiv vom Primärschlüssel abhängt (über E) [Für die Wahl von {D, E} ist schon die 2. NF verletzt]. Lösung: C aus R 1 entfernen (kein Informationsverlust, da C durch E aus R 4 bestimmt werden kann) außerdem verletzt R 3 die 3. NF. Lösung: H aus R 3 entfernen und R 5 : (GH, {{G}}) erstellen. (dies entspräche dem Ergebnis des vollständigen Syntheseverfahrens) Stand: 30.04.2015 16:20 6