uni:8:dbs2:zusammenfassung
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
uni:8:dbs2:zusammenfassung [2015-07-19 18:00] – [Zählanfrage auf unsicheren Daten] skrupellos | uni:8:dbs2:zusammenfassung [2020-11-18 18:11] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 199: | Line 199: | ||
== Star == | == Star == | ||
Eine Tabelle pro Dimension | Eine Tabelle pro Dimension | ||
+ | |||
+ | |||
+ | ===== Recovery ===== | ||
+ | ==== Fehlerarten ==== | ||
+ | * Transaktionsfehler => Rücksetzen | ||
+ | * Lokales UNDO | ||
+ | * Systemfehler => Warmstart | ||
+ | * Globales UNDO | ||
+ | * Globales REDO | ||
+ | * Medienfehler => Geräte-Recovery | ||
+ | * Globales REDO | ||
+ | |||
+ | ==== Logging ==== | ||
+ | * Physisch [Bit-Blöcke] | ||
+ | * Übergangslogging [XOR] | ||
+ | * Zustandslogging [Volle ...] | ||
+ | * Seiten-Logging [... Seiten] | ||
+ | * Eintrags-Logging [... Einträge] | ||
+ | * Logisches Logging [Befehle/ | ||
+ | * Physiologisches Logging [Befehle/ | ||
+ | |||
+ | === Aufbau Log-File === | ||
+ | Ringbuffer | ||
+ | * LSN (Fortlaufende Nummer) | ||
+ | * TA-ID (Welche Transaktion) | ||
+ | * Page-ID (Welche Seite) | ||
+ | * REDO | ||
+ | * UNDO | ||
+ | * PrevLSN | ||
+ | |||
+ | Log-Granularität <= Sperrgranularität | ||
+ | |||
+ | === Einbringungsstrategie (wo in DB) === | ||
+ | * Direkt (NonAtomic, Update in-place) => UNDO nötig | ||
+ | * Indirektes Einbringen (Atomic) [" | ||
+ | |||
+ | === Verdrängungsstrategien (wann frühestens Puffer -> DB) === | ||
+ | * No-Steal [Nach COMMIT] => Kein UNDO | ||
+ | * Steal [egal] => UNDO | ||
+ | |||
+ | WAL-Prinzip: | ||
+ | |||
+ | === Ausschreibungsstrategie (wann spätestens Puffer -> DB) === | ||
+ | * Force [Vor COMMIT] => Kein REDO | ||
+ | * No-Force [egal] => REDO | ||
+ | |||
+ | COMMIT-Regel: | ||
+ | |||
+ | ==== Sicherungen ==== | ||
+ | === Arten === | ||
+ | * TOC: Sicherung //einer// TA (entspricht Force) | ||
+ | * TCC: Alle Änderungen raus schreiben, derweil keine //TA//. | ||
+ | * ACC: Alle Änderungen raus schreiben, derweil keine // | ||
+ | |||
+ | === Ablauf === | ||
+ | | 1. Analyse | ||
+ | | 2. REDO | Vollständiges REDO | Gewinner REDO | | ||
+ | | 3. UNDO | UNDO (damals) laufender TAs | UNDO verlierer TA | | ||
+ | | 4. Abschluss | Sicherungspunkt erstellen | ||
+ | |||
+ | * Gewinner => COMMIT im log | ||
+ | * Verlierer => Rest |
uni/8/dbs2/zusammenfassung.1437321656.txt.gz · Last modified: 2020-11-18 18:10 (external edit)