• Keine Ergebnisse gefunden

Tutorübung zu Grundlagen Datenbanken

N/A
N/A
Protected

Academic year: 2022

Aktie "Tutorübung zu Grundlagen Datenbanken"

Copied!
7
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

David Dejori

Tutorübung zu Grundlagen Datenbanken

(2)

SQL-92 spezifiziert mehrere Konsistenzstufen (isolation level) durch welche der Benutzer (bzw. die Anwendung) festlegen kann, wie stark eine Transaktion von anderen parallel laufenden Transaktionen isoliert werden soll.

(a) Nennen und erläutern Sie kurz die Isolation Level. Geben Sie an, welche Nebenläufigkeitsprobleme mit dem jeweiligen Level vermieden werden.

(b) Warum kann zwischen den Konsistenzstufen gewählt werden?

Hausaufgabe 1

(3)

Die Historie H für die Transaktionen T1, T2 und T3 sei durch das folgende Diagramm gegeben.

(a) Geben Sie alle Konfliktoperationen von H an.

(b) Geben Sie eine total geordnete Historie H′ an (also eine ”lineare“ Abfolge von Operationen), die konfliktäquivalent zu H ist.

(c) Geben Sie an, welche Transaktionen voneinander lesen.

(d) Geben Sie den Serialisierbarkeitsgraphen von H an.

(e) Geben Sie eine serielle Historie H′′ an, die konfliktäquivalent zu H ist.

3 David Dejori | Tutorübung zu Grundlagen Datenbanken | Wintersemester 2019/20

Hausaufgabe 2

(4)

Anwesenheitskontrolle

(5)

(a) Geben Sie alle Eigenschaften an, die von der Historie erfüllt werden.

H1 = w1(x), r2(y), w3(y), w2(x), w3(z), c3, w1(z), c2, c1

(b) Geben Sie alle Eigenschaften an, die von der Historie erfüllt werden.

H2 = r1(x), r1(y), w2(x), w3(y), r3(x), a1, r2(x), r2(y), c2, c3

5 David Dejori | Tutorübung zu Grundlagen Datenbanken | Wintersemester 2019/20

Hausaufgabe 3

(6)

Bei der sperrbasierten Synchronisation hat jedes Datenobjekt eine zugehörige Sperre. Bevor eine Transaktion zugreifen darf, muss sie eine Sperre anfordern. Dabei unterscheiden wir zwei Sperrmodi: Lese- und Schreibsperre.

(a) Erläutern Sie kurz die Unterschiede.

(b) Geben Sie deren Verträglichkeiten an (wenn mehrere Transaktionen Sperren auf demselben Datenobjekt anfordern).

Hausaufgabe 4

(7)

In der Vorlesung haben Sie Serialisierbarkeitsgraphen und den Wartegraphen des (strikten) 2PL kennen gelernt.

(a) Was bedeutet eine Kante T1 → T2 im Serialisierbarkeitsgraphen einer Historie H?

(b) Gehen Sie davon aus, dass die Datenbank die 2PL-Strategie verwendet. Was bedeutet eine Kante T1 → T2 in einem Wartegraphen? Worin besteht der Unterschied zu (a)?

(c) Was bedeutet ein Kreis im Serialisierbarkeitsgraphen einer Historie H? Was im Wartegraphen? Wo liegt der Unterschied?

(d) Wie viele neue Kanten werden dem Wartegraphen maximal hinzugefügt, wenn eine Transaktion eine S-Sperre anfordert? Wie viele bei einer X-Sperre?

7 David Dejori | Tutorübung zu Grundlagen Datenbanken | Wintersemester 2019/20

Hausaufgabe 5

Referenzen

ÄHNLICHE DOKUMENTE

INNER JOINs um nat¨ urliche Joins, das heißt, dass die linke und rechte Relation nur ein einziges gleichnamiges Attribut enthalten, dann kann man den Join auch durch einen NATURAL

d) Geben Sie die Namen aller Assistenten an, deren Boss mindestens eine Vorlesung geprüft hat. e) Geben Sie die Titel der direkten Voraussetzungen für die Vorlesung

Gesucht sind die Namen aller Studenten, die genau alle dreistündigen Vorlesungen gehört haben und die zugehörige Prüfung bestanden haben... Hinweis: Beachten Sie, dass die

• 1-zu-N-Beziehungen werden in eine Relation übersetzt, indem man den Schlüssel der N-Entität als neuen Primärschlüssel wählt und den Schlüssel der 1-Entität als normales

(f) Bestimmen Sie für jede Vorlesung wie viele Studenten diese hören.. Geben Sie auch Vorle- sungen ohne

Das bedeutet also, dass Kunden gelöscht werden können, ihre Bestellungen aber anonymisiert im System gespeichert bleiben.. (d) Fügen Sie Ihrer Datenbank nun mittels DML-Anweisungen

(ii) WITH-Abfrage für die Gesamtanzahl an Studenten erstellen (iii) Durchschnitt der SWS =

Bestimmen Sie, wie in der Vorlesung gezeigt, den optimalen Ausführungsplan als Baum mit Kosten-/Kardinalitätsabschätzungen mithilfe von dynamischem Programmieren.. Wofür stehen