uni:8:dbs2:zusammenfassung
This is an old revision of the document!
Table of Contents
Zusammenfassung
Die Mega-Übersicht
Synchronisation Pessimistische Synchronisation mit Sperren Sperrprotokolle 2PL [deadlocks] Konservatives 2PL Striktes 2PL [deadlocks] Konservatives + Striktes 2PL Sperrverfahren RX RUX RAX RIX RAC Deadlocks Vermeiden [konservatives 2PL/precaiming] Erkennen Wartegraph Time-Out wound-wait wait-die Pessimistische Synchronisation mit Zeitstempeln Optimistische Synchronisation mit Zeitstempeln BOCC BOCC+ FOCC
Grundbegriffe
Anforderungen (Codd)
- Integration einheitlicher Zugriff auf alle Daten einer Anwendung
- Operationen auf den Daten (ändern, löschen, …)
- Data Dictionary Schema anschauen
- Benutzersicheten views
- Konsistenzüberwachung bei Änderung
- Zugriffskontrolle
- Transaktionen
- Synchronisation (Mehrbenutzersystem)
Ebenen
| Anwendungen (mehrere) | |
| Externe Ebene | Views (mehrere) |
|---|---|
| ↓↓ Logische Datenunabhängigkeit ↓↓ | |
| Konzeptionelle Ebene | |
| ↓↓ Physische Datenunabhängigkeit ↓↓ | |
| Interne Ebene | Speicherformat |
ACID
- Atomic (Wenn, dann wird man als ganzes abgebrochen)
- Consistency (Konsistenter Zystand → Konsistenter Zustand)
- Isolation (Man muss sich aleine fühlen)
- Durability (Abgeschlossene Transaktionen sind von dauer)
Serialisierungs-Graph
| x | y | z | ← Attribute |
|---|---|---|---|
| $r_1$ | $w_2$ | $r_1$ | ← $\text{Operation}_\text{Transaktion}$ |
| $r_2$ | $r_3$ | $w_1$ | |
| $w_2$ | $w_3$ | $r_4$ | |
| $w_3$ |
Spaltenweise von oben nach unten die $wr(x), rw(x), ww(x)$-Paare finden
Anomalien
Lost update
| t1 | r(x) | w(x) | |
|---|---|---|---|
| t2 | w(x) |
Dirty read/write
| t1 | w(x) | w(x) | |
|---|---|---|---|
| t2 | r(x) |
Non-repeatable read
| t1 | r(x) | r(x) | |
|---|---|---|---|
| t2 | w(x) |
Phantom-Problem
Non-repeatable read mit Aggregiertem read
Eigenschaften von Schedules
Eigenschaften eines Schedules:
| Schedule | Beschreibung |
|---|---|
| allgemein | Durcheinander |
| seriell | Blockform |
| serialisierbar | allgemein + seriell (Zyklenfrei) |
| rücksetzbar | commit erst nach commit von denen ich gelesen habe |
| ohne kaskadiertes Rollback | Keine Daten einer laufenden TA lesen |
| strikt | Keine Daten einer laufenden TA lesen/schreiben |
Eigenschaften zwischen Schedules:
| Schedule | Beschreibung |
|---|---|
| konfliktäquivalent | Gleiche Abhängigkeitsmengen |
uni/8/dbs2/zusammenfassung.1437165719.txt.gz · Last modified: (external edit)
