Aufgabe 1 Indexstrukturen

Ähnliche Dokumente
[W, T4, D, 15] [start_transaction, T3] [W, T3, C, 30] [W, T4, A, 20] [commit, T4] [W, T2, D, 25] System Crash

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

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


mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 14. Mai 2007 σ KID= 11a (Schüler) π S Name (σ KID= 11a (Schüler))

(4 Punkte) Aufgabe 1: Relationenalgebra - Relationenkalkül

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

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

Anfragebearbeitung. Logische Optimierung Physische Optimierung (Kostenmodelle Tuning ) Kapitel 8 1

Wiederholung VU Datenmodellierung

Datenbanken Vertiefung Wintersemester 2013/ Matrikelnummer: Hinweise. Unterschrift

Wiederholung VU Datenmodellierung

Übungsblatt 10: Lösungsvorschlag

Es wird empfohlen folgendes Material anzusehen:

6. Tutorübung zu Grundlagen: Datenbanken

GROUP BY, HAVING und Sichten

Fokus bisher lag bisher auf sinnvoller Abbildung eines Ausschnitts der realen Welt in einer relationalen Datenbank

Aufgabe 1: Verschachtelte Anfragen

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

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

Datenbanken: Indexe. Motivation und Konzepte

Name: Musterlösung Seite 2. Aufgabe 1 (10 Punkte) Beantworten Sie die Fragen in dieser Aufgabe mit einer kurzen, prägnanten Antwort.

Universität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5

Rückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung

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

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #4. SQL (Teil 2)

Aufgabe 7. Sei die Schema R(A, B, C, D, E) mit folgenden fkt. Abh.:

Datenbanksysteme 2013

Datenbanksysteme noch Kapitel 7: SQL. Vorlesung vom Oliver Vornberger. Institut für Informatik Universität Osnabrück

Grundlagen: Datenbanken

Aufbau Datenbanksysteme

Disclaimer. 1 Allgemeine Grundlagen (8 Punkte) (3 Punkte) (3 Punkte) (2 Punkte)... 2

Universität Augsburg, Institut für Informatik WS 2007/2008 Prof. Dr. W. Kießling 18. Jan Dr. A. Huhn, M. Endres, T. Preisinger Übungsblatt 12

Physische Anfrageoptimierung

Datenbanken Unit 7: Normalisierung ctd.

Literatur: Jeffrey D. Ullman: Principles of Database Systems, 2 nd Edition 1982, Kapitel 2.2

Kapitel 8: Datenintegrität

Oracle 10g Einführung

Übung 6. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)

Wintersemester 2016/ Matrikelnummer: Hinweise. Unterschrift

Anfrageoptimierung Physische Optimierung

Rückblick: Relationale Normalisierung

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

Physischer DB-Entwurf

Klausur Konzeptionelle Modellierung

Physische Datenorganisat

Physische Datenorganisat

Datenbanksysteme Vorlesung vom noch Kapitel 7: SQL. Oliver Vornberger. Institut für Informatik Universität Osnabrück

Datenbankensysteme Aufgabenblatt 2

Datenbank-Tuning. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

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

Informatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, 2017 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen

Grundlagen von Datenbanken. Referentielle Aktionen, Sichten, Serialisierbarkeit und Locking

Datenbanksysteme noch Kapitel 7: SQL Vorlesung vom Oliver Vornberger. Institut für Informatik Universität Osnabrück

Anfrageoptimierung Logische Optimierung

Datenbanken 1 Sommersemester 2014/

Semesterklausur Datenbanksysteme 1 SS 2015

Wir haben folgende Ausprägung der Relation Studenten:

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

Aufgabensammlung SQL SW4 1. Einfache Anfragen

Datenbanksysteme noch Kapitel 7: SQL Vorlesung vom Oliver Vornberger. Institut für Informatik Universität Osnabrück

Kapitel 1: Einführung 1.1 Datenbanken?

SQL Wiederholung. Datenbanktechnologien. Verbunde. Aggregation und Gruppierung. Unterabfragen. Hochschule für Technik und Wirtschaft Berlin

Korollar 191 In einem (a, b)-baum mit n gespeicherten Schlüsseln können die Wörterbuchoperationen in Zeit O(log a n) durchgeführt werden.

9. Sicherheitsaspekte

KonzMod-Braindump. von Ersties für Ersties. vom 15. Februar 2012

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

Datenbanken 6: Normalisierung

Datenbanken Vertiefung Wintersemester 2014/ Matrikelnummer: Hinweise. Unterschrift

Übung 3. Komplexe SQL-Anfragen. Prof. Dr. Andreas Schmietendorf 1. Übung 3

Kapitel 10: Relationale Anfragebearbeitung

Kapitel 6 Relationale Entwurfstheorie. Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition

Kapitel 10: Relationale Anfragebearbeitung

Prüfung Datenmanagement

Rückblick: Relationale Entwurfstheorie

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

Informatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen

Übung 4. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)

Entity Relationship Modell

6. Anfragebearbeitung

Übung 9. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)

Indexstrukturen in SQL

Vorlesung Datenbanken II Endklausur

Datenbanken II B: DBMS-Implementierung Klausur

Datenbanksysteme und Datenmodellierung

5. Relationale Entwurfstheorie

relationale Algebra und SQL

Klausur Algorithmen und Datenstrukturen SS August Arbeitszeit 90 min

Kapitel 1: Einführung 1.1 Datenbanken?

technische universität dortmund Fakultät für Informatik LS 8 Speichern von Daten Prof. Dr. Katharina Morik

Algorithmen und Datenstrukturen VO 3.0 Vorlesungsprüfung 19. Oktober 2007

SQL - Datenbankdesign - Aufbau

Transkript:

8. Übung zur Vorlesung Datenbanken im Sommersemester 2006 mit Musterlösungen Prof. Dr. Gerd Stumme, Dr. Andreas Hotho, Dipl.-Inform. Christoph Schmitz 25. Juni 2006 Aufgabe 1 Indexstrukturen Zeichnen Sie diesen B-Baum, nachdem der Wert 19 eingefügt wurde. Einfügung von 19 verursacht zwei Überläufe und somit Einfügen einer neuen Ebene: Aufgabe 2 Indexstrukturen Fügen Sie die folgenden Schlüssel in der angegebenen Reihenfolge in eine erweiterbare Hashtabelle mit Bucketgröße zwei ein. Zeichnen Sie den Zustand der Hashtabelle nach den Einfügungen von delta und eta. x h(x) alpha 0101 beta 0110 gamma 1010 delta 1101 epsilon 1011 zeta 1001 eta 0111 1

Aufgabe 3 RAID Ein RAID-5-Array befindet sich in dem Zustand nach Tabelle 1. Dabei sei B 2,3 der dritte Block auf der zweiten Platte, P 124,3 der Parity-Block der dritten Blöcke von Platten 1, 2 und 4, usw. Tabelle 1 Platte 1 Platte 2 Platte 3 Platte 4 P 234,1 1111 B 2,1 0100 B 3,1 1101 B 4,1 0110 B 1,2 0110 P 134,2 0111 B 3,2 0110 B 4,2 0111 B 1,3 1011 B 2,3 1100 P 124,3 1110 B 4,3 1001 B 1,4 0010 B 2,4 1001 B 3,4 0110 P 123,4 1101 Schreiben Sie die Werte 2

1000 in B 1,2 0100 in B 3,4 Wie sieht das RAID-Array nachher aus? Auf welche Platten wurde zugegriffen? Platte 1 Platte 2 Platte 3 Platte 4 P 234,1 1111 B 2,1 0100 B 3,1 1101 B 4,1 0110 B 1,2 1000 P 134,2 1001 B 3,2 0110 B 4,2 0111 B 1,3 1011 B 2,3 1100 P 124,3 1110 B 4,3 1001 B 1,4 0010 B 2,4 1001 B 3,4 0100 P 123,4 1111 Zugriffe: für B 1,2 : Platte 1 und Platte 2 für die Parity-Information für B 3,4 : Platte 3 und Platte 4 für die Parity-Information In dem RAID 5 ist Platte 3 ausgefallen. Der Zustand nach Einbau der neuen Platte ist: Tabelle 2 Platte 1 Platte 2 Platte 3 Platte 4 P 234,1 1111 B 2,1 0100 B 3,1 xxxx B 4,1 0110 B 1,2 0110 P 134,2 1000 B 3,2 xxxx B 4,2 0111 B 1,3 1011 B 2,3 1100 P 124,3 xxxx B 4,3 1001 B 1,4 0010 B 2,4 1001 B 3,4 xxxx P 123,4 1101 Rekonstruieren Sie den Inhalt von Platte 3. Welche Operation hat zwischen dem Zustand von Tabelle 1 und dem von Tabelle 2 stattgefunden? Nur der Parityblock P 134,2 hat sich geändert, also gab es nur eine Block B 3,2. Das Datum war B 3,2 = B 1,2 P 134,2 B 4,2 = 0110 1000 0111 = 1001 Der Rest von Platte 3 bleibt wie in Tabelle 1. Änderung in Aufgabe 4 Indexstrukturen In der Vorlesung haben Sie als Indexstrukturen B-Bäume und Hashes kennengelernt. Nennen Sie die wesentlichen Vorteile der beiden Indexstrukturen gegenüber der jeweils anderen! B-Baum 3

Hash Sortierung der Daten wird erhalten: Sort-Merge-Join und Bereichsanfragen möglich keine Hashfunktion notwendig, nicht so abhängig von Schlüsselverteilung Zugriff in O(1) statt O(log n), es sind genau 2 Zugriffe notwendig Welcher Index (Art, welche Attribute) würde die folgenden Anfragen jeweils am meisten beschleunigen? 1. SELECT * FROM Professor WHERE 50000 <= gehalt <= 60000 B-Baum, da dies eine Bereichsanfrage ist, die in einer Hashtabelle nicht effizient beantwortet werden kann. 2. SELECT * FROM Professor WHERE Standort = WA73 and Raum = 0441 Ein Hash-Index auf (Standort, Raum) würde hier einen Zugriff in O(1) erlauben. Hausaufgabe: Normalisierung Bringen Sie die folgende Relation in Bezug auf die gegebenen funktionalen Abhängigkeiten mit dem Dekompositionsalgorithmus in BCNF. R1(A, B, C, D, E, F, G, H, I, J, K, L) Funktionale Abhängigkeiten: (i) A B, C, D, E, F, G (ii) B C, D, E, F, G (iii) A, H I, J, K, L (iv) I J, L (v) F E Bemerkung Im Skript sind die Relationen jeweils als Ri 1, R2 i usw. nummeriert. Hier wird der Übersicht halber einfach eine fortlaufende Nummerierung verwendet. Zerlege R1 nach (i) R2(A, H, I, J, K, L) R3(A, B, C, D, E, F, G) 4

Zerlege R3 nach (ii) R2(A, H, I, J, K, L) R4(A, B) R5(B, C, D, E, F, G) Zerlege R2 nach (iv) R6(A, H, I, K) R7(I, J, L) R4(A, B) R5(B, C, D, E, F, G) Zerlege R5 nach (v) R6(A, H, I, K) R7(I, J, L) R4(A, B) R8(B, C, D, F, G) R9(F, E) Bemerkung Die Relation R1 hieß ursprünglich Bestellung(RechnungNr, KundenNr, Name, Adresse, Bankname, BLZ, KontoNr, PositionNr, ArtikelNr, ArtBez, Menge, Einzelpreis) Die normalisierten Relationen sind also dementsprechend: RechnungPositionen(RechnungNr, PositionNr, ArtikelNr, Einzelpreis) Artikel(ArtikelNr, ArtBez, Einzelpreis) RechnungKunde(RechnungNr, KundenNr) Kunden(KundenNr, Name, Adresse, BLZ, KontoNr) Banken(BLZ, Bankname) Solch eine Relation (bzw. die normalisierten Relationen) könnte z. B. die Bestellungen eines Versandhändlers aufnehmen. Hausaufgabe: SQL 1. Berechnen Sie die Gesamtzahl der Semesterwochenstunden, die die einzelnen Professoren erbringen. Dabei sollen auch die Professoren berücksichtigt werden, die keine Vorlesungen halten. 5

select persnr, name, sum(sws) as swssumme from professoren left outer join vorlesungen on persnr=gelesenvon group by persnr, name 2. Finden Sie die Namen der Studenten, die in keiner Prüfung eine bessere Note als 3.0 hatten. a) Berücksichtigen Sie dabei alle Studenten, auch die ohne Prüfung. select name from studenten where matrnr not in ( select matrnr from pruefen where note < 3.0 ) b) Berücksichtigen Sie nur die Studenten, die schon eine Prüfung abgelegt haben. select name from studenten s join pruefen p on s.matrnr = p.matrnr where s.matrnr not in ( select matrnr from uni.pruefen where note < 3.0 ) Auflösung zur SQL-Aufgabe vom 6. Übungsblatt (11.6.2007) create view notendurchschnitt(matrnr, note) as ( select matrnr, avg(note) from pruefen group by matrnr) 6