Aufgabenblatt 9  
Ausgabetermin: 15.12.00
Abgabetermin: Montag d. 8.1.01 bis 24 Uhr per Email an die Übungsgruppenleiter 
Motivation: Begleitende Übungen zum Vorlesungsthema "Paralleler Zugriff auf Datenbanken". 
Aufgabe 1: Unter Professoren.html finden Sie eine Beispielausprägung der Relation "Professoren". Gehen Sie davon aus, daß die Attribute "Raum" und "Fakultät" stets eindeutige Werte haben und nur die drei genannten Fakultäten möglich sind. Die Relation soll horizontal fragmentiert werden, so daß Professoren derselben Fakultät und in demselben Stockwerk (1. Raumziffer) in einem Fragment zusammengefaßt werden.
Beispiel: Ein Fragment enthält Professoren der Fakultät Philosophie aus dem 2. Stockwerk.
a) Definieren Sie Zerlegungsprädikate gemäß einzelner Attributwerte, mit denen die Relation Professoren in die oben genannten Fragmente zerlegt werden kann. Definieren Sie Selektionsprädikate für diese Fragmente (prinzipiell Konjunktion negierter oder nicht-negierter Zerlegungsprädikate).
b) Wieviele inkonsistente Selektionsprädikate (solche, die unabhängig von konkreten Daten stets leere Fragmente ergeben) lassen sich mit den Zerlegungsprädikaten formulieren, die sich auf das Attribut "Fakultät" beziehen? Wie könnte man die Inkonsistenz eines Selektionsprädikates formal bestimmen?
Geschätzter Zeitbedarf: 0,5h
2 Punkte
Aufgabe 2: Ein schwerwiegendes Problem beim Zweiphasen- Commit-Protokoll (2PC) besteht darin, daß Agenten beim Absturz des Koordinators blockiert sind. Eine gewisse Abhilfe läßt sich dadurch erreichen, daß sich die Agenten untereinander beraten und eine Entscheidung herbeiführen. Entwickeln Sie ein derartiges Protokoll unter der Annahme, daß 
- die Agenten ihr vorgeschriebenes Protokoll stets ausführen können,
- den Ausfall des Koordinators durch ein Timeout erkennen können, und 
- untereinander mit einer stets intakten ringförmigen Kommunikationsstruktur verbunden sind. Insbesondere sollen folgende Fälle abgedeckt sein:
a) Einer der Agenten hat noch keine PREPARE-Meldung vom Koordinator erhalten.
b) Einer der Agenten hat ein COMMIT empfangen.
c) Einer der Agenten hat ein FAILED an den Koordinator gemeldet.
Hinweis: Das protokollgerechte Verhalten eines Agenten kann durch einen endlichen Automaten beschrieben werden.
Geschätzter Zeitbedarf: 2h
5 Punkte
Aufgabe 3: Die Zeitstempel-Methode zur Vermeidung von Deadlocks ist wie
folgt definiert: 
Transaktionen werden im 2PL-Protokoll abgearbeitet und dabei
zusätzlich durch Zeitstempel priorisiert. 
Zurücksetzen statt Warten, wenn T1 Sperre fordert, T2 aber Sperre erst freigeben muß:
a) Strategie Wound-wait: Abbruch von T2, falls T2 jünger als T1,
sonst warten 
b) Strategie Wait-die: Abbruch von T1, wenn T1 jünger als T2,
sonst warten 
Beweisen Sie, daß bei beiden Strategien Deadlocks unmöglich sind.
Hinweis: Sie können dazu den Wartegraph betrachten. 
Geschätzter Zeitbedarf: 1h
3 Punkte
Aufgabe 4: WEIHNACHTSBONUS: Die mit dieser Aufgabe erzielten Punkte können Sie rückwirkend einem der Aufgabenblätter 1 - 8 zuschlagen, um dort ggf. die 50%-Grenze nachträglich überschreiten zu können.

Das Verhalten technischer Systeme kann mithilfe von tabellarischen Komponentenbeschreibungen und darauf arbeitenden Datenbankoperationen auf elegante Weise berechnet werden (aus aktueller Forschung). In dieser Aufgabe sollen Sie zu den möglichen Eingabewerten des gezeigten Schaltwerkes die möglichen Ausgabewerte berechnen.

Das Schaltwerk setzt sich aus AND-Gattern und NOT-Gattern zusammen, die durch folgende Tabellen beschrieben werden:
AND: E1  E2  A       NOT:  E   A
           0    0     0                   0    1
           0    1     0                   1    0
           1    0     0                    ?    ?
           1    1     1
           ?    0     0
           0    ?     0
           1    ?     ?
           ?    1     ?
           ?    ?     ?
Mit  ? wird ein Wert zwischen 0 und 1 (aber weder 0 noch 1) bezeichnet.

a) Durch welche Relationen-Operationen unter Verwendung der Gatter-Tabellen können Sie die Ausgaben des Schaltwerkes für verschiedene Eingaben ermitteln? Stellen Sie eine Verhaltenstabelle auf.

b) Wie verändet sich das Verhalten des Schaltwerkes, wenn anstelle eines NOT-Gatters ein NOT-Gatter mit Schmitt-Trigger eingesetzt wird?  Statt der letzten Zeile der obigen NOT-Tabelle enthält die Tabelle dieses Gatters:
?   0
?   1

Geschätzter Zeitbedarf: 1,5h
6 Punkte

Abzugebende
Dokumente
Aufgabe 1: (a) Definitionen der Zerlegungsprädikate und 
(b) Beantwortung der Fragen. 
Aufgabe 2: Spezifikation des Agenten-Protokolls, d.h. Angabe des Agentenverhaltens entsprechend Situation und Vorgeschichte.
Aufgabe 3: Beweis für a) und Beweis für b)
Aufgabe 4: (a) Angabe der Relationen-Operationen und der Verhaltenstabelle für das Schaltwerk.
(b) Änderungen der Verhaltenstabelle.

Schicken Sie bitte Ihre Dokumente - ein Exemplar je Übungsteam - als ein im Zip-Code komprimiertes Nur-Text-Datei-Attachmentper Email an Ihren Übungsgruppenbetreuer.