Sie sind auf Seite 1von 6

Umbruch von Oegge

Version 1 1 4.05.201 9 SS 1 8 31 .07.201 8


Böhm
Datenbanksysteme
Dauer: 60 min. Lösung: keine Bestanden Mit: XXX
Bemerkungen: keine Hilfsmittel
Aufgabe 1: ER-Modellierung (15 Punkte)
Aufgabe
a) Gegeben1:istER-Modellierung (15 Punkte)
das in Abbildung 1 dargestellte ER-Modell. Die Schlüsselattribute sind
durch Unterstreichen gekennzeichnet. Die Kardinalitätsangaben sind Teilnehmerkardina- 6P
a) Gegeben
litäten.
ist das in Abbildung 1 dargestellte ER-Modell. Die Schlüsselattribute sind
durch Unterstreichen gekennzeichnet. Die Kardinalitätsangaben sind Teilnehmerkardina-
litäten. Länge

Startzeit Länge Typ

Startzeit
interagiert Typ

interagiert
PortionID
[0,* ] [0,*] Ablaufdatum
Schimpanse Zeit
[1,*] PortionID
Name [0,* ] [0,*] Ablaufdatum
Schimpanse
[1,1] Zeit [0,1]
[1,*] Futterportion Typ
Name
Geburtstag
wohnt
[1,1] füttert [0,1] Futterportion Typ
Geburtstag [0,*] MitarbeiterID
Standort [0,*]
wohnt füttert
[0,*] Mitarbeiter
[0,*] [0,*] MitarbeiterID
Name
Standort
Größe Käfig
[0,*] reinigt
[0,*] Mitarbeiter
[0,*] Name
Größe Käfig reinigt
Abbildung 1: Gegebenes ER-Modell
Abbildung
Überführen Sie das ER-Modell aus1:Abbildung
Gegebenes 1, ER-Modell
soweit möglich kapazitätserhaltend,
in das zugehörige relationale Modell. Optimieren Sie die Relationen dabei mit den in
Überführen Sie das ER-Modell aus Abbildung 1, soweit möglich kapazitätserhaltend,
der Vorlesung vorgestellten Methoden zur Transformation vom ER- ins Relationenmo-
in das zugehörige relationale Modell. Optimieren Sie die Relationen dabei mit den in
dell. Kennzeichnen Sie Primärschlüssel durch Unterstreichen. Kennzeichnen Sie einen
der Vorlesung vorgestellten Methoden zur Transformation vom ER- ins Relationenmo-
Fremdschlüssel durch einen Pfeil zu dem Schlüssel, auf den sich der Fremdschlüssel
dell. Kennzeichnen Sie Primärschlüssel durch Unterstreichen. Kennzeichnen Sie einen
bezieht.
Fremdschlüssel durch einen Pfeil zu dem Schlüssel, auf den sich der Fremdschlüssel
Verwenden Sie die auf dem Antwortblatt vorgegebene Struktur. Dort müssen nicht alle
bezieht.
Felder ausgefüllt werden.
Verwenden Sie die auf dem Antwortblatt vorgegebene Struktur. Dort müssen nicht alle
(6 Punkte)
Felder ausgefüllt werden.
b)(6Gegeben
Punkte) ist das in Abbildung 2 dargestellte EER-Modell. Ergänzen Sie das Diagramm 3P
im Antwortteil um die in den Punkten (i) bis (iii) genannten Elemente.
b) Gegeben ist das in Abbildung 2 dargestellte EER-Modell. Ergänzen Sie das Diagramm
im Antwortteil um die in den Punkten
[0,*]
(i) bis (iii) genannten
[1,1]
Elemente.
Filiale führt Inventur
durch
[0,*] [1,1]

Filiale führt Inventur


durch
Abbildung 2: Gegebenes EER-Modell
Abbildung 2: Gegebenes EER-Modell
(i) Überführen Sie die Teilnehmerkardinalitäten der Beziehung führt durch in Standard-
kardinalitäten.
(i) Überführen Sie die Teilnehmerkardinalitäten der Beziehung führt durch in Standard-
(ii) Ergänzen Sie ein optionales Attribut Bäcker fı̈r die Entität Filiale.
kardinalitäten.
(iii) Ergänzen Sie Inventur um ein Attribut Inventar. Inventar ist objektwertig (eine Liste
(ii) Ergänzen Sie ein optionales Attribut Bäcker fı̈r die Entität Filiale.
von Objekten) und bezieht sich auf den Entitätstyp Inventareintrag mit dem Attribut
(iii) Ergänzen Sie Inventur
Inventarnummer. um ein
Nehmen Sie Attribut Inventar. Inventar
an, dass Inventareintrag ist objektwertig
durch (eine Liste
die Inventarnummer und
von
die Objekten) und bezieht
Zugehörigkeit sich auf
zur Inventur den Entitätstyp
eindeutig Inventareintrag
identifiziert wird. mit dem Attribut
Inventarnummer. Nehmen Sie an, dass Inventareintrag durch die Inventarnummer und
Datenbanksysteme 1
die Zugehörigkeit zur Inventur eindeutig identifiziert
(3 Punkte) fsmi.uni-karlsruhe.de
wird. ©
fsmi.kit fsmikit
Böhm SS 1 8 E-Mail: info- klausuren@fsmi. uni- karlsruhe. de
(3 Punkte)
c) Benennen Sie jeweils die notwendige EER-Modellierungstechnik, um die folgenden
Sachverhalte darzustellen, und ergänzen Sie die vorgegebenen EER-Diagramme im
Antwortteil um die entsprechenden Beziehungen.

i. Ein Mitarbeiter ist entweder Pfleger oder Arzt. Er kann höchstens eines von beiden
sein, ist aber eventuell keines von beiden.
ii. Ein Mitarbeiter ist entweder Pfleger oder Arzt. Er muss eines von beiden sein,
kann aber nicht beides zugleich sein.
iii. Ein Mitarbeiter kann ein Pfleger oder ein Arzt oder beides zugleich sein; er kann
auch weder Pfleger noch Arzt sein.

(6 Punkte)
Aufgabe 2 – SQL (15 Punkte)
Die Daten der neuen App des Karlsruher Verkehrsverbundes (KVV) werden in einer
relationalen Datenbank gespeichert. Diese besteht aus zwei Relationen. Da die Haltestel-
len unterschiedliche Eigenschaften besitzen, werden alle Eigenschaften in der Relation
Properties gespeichert. Leider haben sich hierbei einige Datenfehler eingeschlichen. Um
diese zu finden, setzen Sie die folgenden SQL-Anfragen um.
Erläuterung: Nehmen Sie die nachfolgend abgebildete Tabellenstruktur mit sinnvollen
Datentypen und Schlüsseln an. Die Daten in den Tabellen sind exemplarisch, daher geben
Sie für die unten gestellten Aufgaben immer generelle Lösungen an! Alle Aufgaben lassen
sich mit SQL-Konstrukten lösen, die in der Vorlesung vorgestellt wurden. Die Teilaufgaben
sind voneinander unabhängig.

Haltestelle Kürzel ’halt’


id name zone
1 Martkplatz 1
2 Hauptbahnhof 1
3 Durlach Bahnhof 2

Properties Kürzel ’prop’


halt id p key p value
1 Anzahl Gleise 2
3 Anzahl Gleise 4
3 gehört KVV nein
3 Anzahl Gleise 6

a) Geben Sie für die Haltestelle ’Marktplatz’ die Anzahl der Gleise aus. Gehen Sie davon
aus, dass in der Relation Properties dafür genau ein Eintrag mit dem p key ’Anzahl
Gleise’ existiert. (2 Punkte)
b) Geben Sie die Namen aller Haltestellen ohne einen Eintrag in der Relation Properties
aus. (2 Punkte)
c) Geben Sie name und p key für alle Haltestellen aus, die zu einem p key mehrere, nicht
identische Werte (p value) besitzen. (3 Punkte)
d) Erstellen Sie die Sicht Gleise (Name, Anzahl Gleise). Sie enthält die Namen aller
Haltestellen mit dem entsprechenden Wert, identifiziert durch den p key ’Anzahl
Gleise’. Haltestellen ohne solchen Eintrag sollen als (name, NULL) enthalten sein. (3
Punkte)
Hinweis: Gehen sie davon aus, dass pro Haltestelle maximal ein solcher Eintrag exis-
tiert.

Datenbanksysteme ©
e) Geben Sie die Namen der drei Haltestellen mit2den meisten Einträgen
fsmi.uni-karlsruhe.de
info-
(Tupel) in derfsmi.kit
klausuren@fsmi.
fsmikit
uni- karlsruhe. de
Böhm properties-Relation aus (3 Punkte) SS 1 8 E-Mail:
Hinweis: Sie können Konstrukte wie limit verwenden.
Punkte)
Hinweis: Gehen sie davon aus, dass pro Haltestelle maximal ein solcher Eintrag exis-
tiert.
e) Geben Sie die Namen der drei Haltestellen mit den meisten Einträgen (Tupel) in der
properties-Relation aus (3 Punkte)
Hinweis: Sie können Konstrukte wie limit verwenden.
f) Geben Sie alle Fahrtmöglichkeiten (Haltestellenkombinationen) aus, bei denen sich
beide Haltestellen in Zone 1 befinden. (2 Punkte)

Aufgabe 3 – Relationale Theorie (15 Punkte)


a) Gegeben sei die Relation R(A, B, C, D, E, G, H, I) mit der folgenden Menge an funktio-
nalen Abhängigkeiten:
F = {A → B
ABCD → E
EI → G
EI → H
ACDI → E
ACDI → G}

(i) Welche der folgenden Attributmengen sind Schlüssel(kandidaten) für R mit den
funktionalen Abhängigkeiten F?

Attributmenge Richtig Falsch


{A, B, C, D}  
{A, C, D, G}  
{A, C, D, I}  
{B, E, G, H}  

(ii) Transformieren Sie R mit dem Synthesealgorithmus in 3NF. Geben Sie die Zwi-
schenergebnisse der Schritte des Algorithmus an.

(7 Punkte)

b) Gegeben sei die Relation R(X, Y, Z, A) mit der mehrwertigen Abhängigkeit X  Y .

(i) Existiert eine weitere nichttriviale mehrwertige Abhängigkeit in R? Wenn ja, welche?
(ii) Vervollständigen Sie auf dem Antwortblatt die Tupel für R aus folgender Tabelle
so, dass X  Y gilt.

X Y Z A
t1 = 0 1 2 a
t2 = 0 3 4 b

(3 Punkte)

Datenbanksysteme 3 © fsmi.uni-karlsruhe.de fsmi.kit fsmikit


Böhm SS 1 8 E-Mail: info- klausuren@fsmi. uni- karlsruhe. de
c) Gegeben sei die Relation R(A, B, C, D, E) mit der folgenden Menge an funktionalen
Abhängigkeiten:
F = {BC → D
BC → E
E→B
CD → E
CD → A}

(i) Berechnen Sie die Abschlüsse (Hüllen) der folgenden Attributmengen basierend
auf F .

Attributmenge Abschluss

{A}
{E}
{C, E}
{C, D}
{B, C}

(ii) Geben Sie alle Schlüsselkandidaten der Relation R an.

(iii) Gegeben F : Welche der folgenden Abhängigkeiten verletzen die BCNF (Ja/Nein)?
Begründen Sie jeweils Ihre Antwort.

Abhängigkeit verletzt BCNF? Begründung

BC → D

BC → E

E→B

CD → E

CD → A

(5 Punkte)

Datenbanksysteme 4 ©fsmi.uni-karlsruhe.de fsmi.kit fsmikit


Böhm SS 1 8 E-Mail: info- klausuren@fsmi. uni- karlsruhe. de
Aufgabe 4 – Transaktionen und Replikation (15 Punkte)

a) (i) Zeichnen Sie den Verlauf der Sperrenbelegung für das schwache und für das strikte
2PL in die Koordinatensysteme auf dem Antwortblatt ein. Kennzeichnen Sie jeweils
die beiden Phasen des 2-Phasen-Sperrprotokolls.
(ii) Gegeben seien folgende Schedules S1 , S2 und S3 unter Nutzung der Transaktionen
T1 bis T5 :

S1 = w1 [B] r1 [B] c1 , S2 = r2 [A] r5 [A] r2 [B] c2 r5 [A] c5


S3 = r3 [A] w3 [B] w4 [A] w3 [B] c3 r4 [A] c4

Für die Aufgabenteile (1) und (2) nutzen Sie bitte die vorgegebenen Lücken auf
dem Lösungsblatt.
(1) Ergänzen Sie die Schedules S1 und S2 um die nötigen Aktionen zum Setzen (z. B.
rl1 [A] oder wl1 [A]) und Freigeben (z. B. ul1 [A]) von Sperren unter Anwendung
des strikten 2PL.
(2) Ergänzen Sie den Schedule S3 so um die nötigen Aktionen zum Setzen und Frei-
geben von Sperren unter Anwendung des schwachen 2PL, dass der Schedule
ausführbar ist.
(3) Ist der Schedule S3 unter Anwendung des strikten 2PL ausführbar?
Das Setzen von Sperren muss immer zum spätest möglichen Zeitpunkt erfolgen.
(5 Punkte)

b) Gegeben sind folgende partiellen Historien:

H1 = w1 [A] w2 [B] w2 [C] c2 r3 [A] r4 [A] c4


H2 = w5 [E] w1 [C] c1 r2 [C] w2 [E] r4 [E] r4 [C] c4 r3 [E] c2 c3
H3 = w1 [A] r2 [B] r4 [A] w1 [A] r3 [A] w3 [C] r3 [D] w1 [A] r1 [C] c1 c3 w2 [B] c2

Name: Matrikelnummer:
Geben Sie die Serialisierbarkeitsgraphen SG(H1 ), SG(H2 ) und SG(H3 ) an. Beschriften
Sie die Kanten der Serialisierbarkeitsgraphen mit den Objekten der konfligierenden
Operationen. Aufgabe
Antwortblatt Begründen Sie für jede Historie, ob sie serialisierbar ist.
4 a)
(4,5 Punkte)
(i) Schwaches 2PL:

Sperren

t
Datenbanksysteme 5 © fsmi.uni-karlsruhe.de fsmi.kit fsmikit
Böhm SS 1 8 E-Mail: info- klausuren@fsmi. uni- karlsruhe. de
c) Gehen Sie von einer Datenbasis mit fünf Kopien (Replikaten) R1, R2, R3, R4 und R5 aus;
die Replikation auf fünf Knoten im Netzwerk wird mit dem Quorum Consensus-Protokoll
kontrolliert. Weiterhin ist p = 3 (Lese-Quorum) und q = 3 (Schreibquorum) gegeben.
Die Datenbasis enthält zwei Variablen x und y, die über diese 5 Kopien repliziert sind.
Initial enthalten alle Kopien x=0 und y=0. Nehmen Sie an, dass die folgenden sieben
Schritte genau in der vorgegebenen Reihenfolge stattfinden:

1. Die Knoten 4 und 5 und damit die entsprechenden Kopien sind nicht verfügbar.
2. Es findet ein Update statt, x := 1.
3. Die Kopien R4 und R5 sind wieder verfügbar, aber jetzt sind R2 und R3 nicht
verfügbar.
4. Es findet ein Update statt, y := 1.
5. Die Kopien R2 und R3 sind wieder verfügbar, aber nun ist R1 nicht verfügbar.
6. Es findet eine Leseoperation read(x) statt; die Kopien R2, R3 und R4 werden für
Name:das Lese-Quorum ausgewählt. Matrikelnummer:
7. Es findet eine Leseoperation read(y) statt; die Kopien R3, R4 und R5 werden für
das Lese-Quorum ausgewählt.
b)
(i) Geben Sie den
[0,*]
Inhalt der fünf Kopien nach
[1,1]
der ersten und nach der zweiten
Update-Operation an. Erklären
führt
Sie kurz Ihre Antwort.
Filiale Inventur
(ii) Geben sie das jeweilige Resultat
durch von beiden Lese-Operationen an.

(iii) Die Kopie R1 ist die einzige, die in beiden Update-Operationen beteiligt war, d. h.
sie ist die einzige, die direkte Kenntnis über beide Updates hat. Wodurch wird
garantiert, dass in beiden Fällen die Leseoperationen das richtige Ergebnis liefern,
obwohl die Kopie R1 während dieser Leseoperationen nicht verfügbar ist?
(iv) Welche anderen möglichen Wertekombinationen (p,q), neben (p=3, q=3), könnten
für das Quorum-Consensus-Protokoll bei fünf Replikaten gewählt werden, sodass
mindestens der Ausfall eines Knoten toleriert wird?
(5,5 Punkte)
Augabe 1

c)

i. EER-Modellierungstechnik: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pfleger

MitarbeiterID
Mitarbeiter
Name
Arzt

ii. EER-Modellierungstechnik: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pfleger

MitarbeiterID
Mitarbeiter
Name
Arzt

iii. EER-Modellierungstechnik: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pfleger

MitarbeiterID
Mitarbeiter
Name
Arzt

Datenbanksysteme 6 ©fsmi.uni-karlsruhe.de fsmi.kit fsmikit


Böhm SS 1 8 E-Mail: info- klausuren@fsmi. uni- karlsruhe. de

Das könnte Ihnen auch gefallen