Kapitel 11: Mehrbenutzersynchronisation und Serialisierbarkeit Flashcards
Arten von Mehrbenutzersynchronisation?
- Im Einzelbetrieb
- laufen sequenziell
- Im verzahnten Mehrbenutzerbetrieb
- Laufen parallel
- Bei warten auf Nutzer von TA1 läuft beispieslweise zwischenzeitlich TA2 an
Beispiel für Fehler bei unkontrolliertem Mehrbenutzerbetrieb?
Lost update: write(A,a2) geht verloren, da überschrieben
Fehler zwei bei Mehrbenutzerbetrieb
Dirty read: liest Wert, der später zurückgesetzt wird
Fehler drei bei Mehrbenutzerbetrieb?
Phantomproblem: T1: SElect, T2: dann daten hinzugefügt, T1dann erst mit select arbeiten
Was ist Serialisierbarkeit?
- Historie ist aquivalent zu einer seriellen Historie
- Dennoch parallele (verzahnte) Ausführung möglich
Es wird immer gewartet, bis verwendeter Wert festgeschrieben wurde. Wird er zeitlich verwendet, kann gegebenenfalls ein Konflikt auftreten (siehe Beispiele). Serialisierungsgraphen zeichnen, wer kommt nach wem? Muss azyklisch sein
Beispielaufgabe Aquivalenz verschiedener Historien I
lösen:
Beispielaufgabe Äquivalenz einer Historie II
Lösen:
Wann ist ein Serialisierungsgraph serialisierbar
WEnn er azyklisch ist (aufzeichnen)
Erkläre Rücksetzbarkeit (RC)
- Eine Transaktion darf erst dann ihr commit durchführen, wenn alle Transaktionen, von denen sie gelesen hat, beendet sind.
TA kann zurückgesetzt werden, ohne dadurch Änderungen einer anderen TA plötzlich inkonsistent werden zu lassen.
Erkläre kasskadierendes Rücksetziten (ACA)
TA kann zurückgesetzt werden, ohne dadurch Änderungen einer anderne TA inkonsistenz werden zu lassen.
Erkläre strikte Historien (ST)
Historien in dieser Klasse haben die Eigenschaft, dass Transaktionen zurückgesetzt werden können, ohne dadurch das Zurücksetzen einer anderen TA notwendig zu machen.
Wie sehen die verschiedenen Arten in Beziehung aus?
Was ist der DB Scheduler?
Nennen Sie die Modi der sperrbasierten Synchronisation
- S (shared, read lock) - Lesesperre
- X (exclusive, write lock) - Schreibsperre
Verträglichkeit:
S Sperre: geht bei NL und S
X Sperre: geht bei NL
Definition: Zwei-Phasen Sperrprotokoll (2PA)
- Jedes Objekt, das von TA genutzt wird muss gesperrt werden.
- TA fordert Sperre, die sie schon besitzt nicht erneut an
- Verträglichkeitstabelle muss eingehalten werden
- Zwei Phasen
- Wachstumsphase: Sperre wird angefordert, aber keine freigegeben
- Bisher erworbene Sperre wird freigegeben, keine weitere darf angefordert werden
- EOT muss TA alle Sperren zurückgeben