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 15:40] – [Mandatory Access Control (MAC)] skrupellos | uni:8:dbs2:zusammenfassung [2020-11-18 18:11] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 140: | Line 140: | ||
==== Logische Anfrageoptimierung ==== | ==== Logische Anfrageoptimierung ==== | ||
- | | + | === Umformungsregeln === |
+ | | ||
* R∪S=S∪R | * R∪S=S∪R | ||
* R∩S=S∩R | * R∩S=S∩R | ||
Line 148: | Line 149: | ||
* (R∩S)∩T=R∩(S∩T) | * (R∩S)∩T=R∩(S∩T) | ||
* (R×S)×T=R×(S×T) | * (R×S)×T=R×(S×T) | ||
- | * $\sigma_a(\sigma_b(R)) = \sigma_c(\sigma_a(R))$ | + | * $\sigma_A(\sigma_B(R)) = \sigma_B(\sigma_A(R))$ |
+ | * σA∧B(R)=σA(σB(R)) | ||
+ | * πA(πB(R))=πA(R) mit A⊆B | ||
+ | * πA(σB(R))=σB(πA(R)) mit attr(B)⊆A | ||
+ | * σB(R⋈S)=σB(R)⋈S mit attr(B)⊆ attr(R) | ||
+ | * σB(R×S)=σB(R)×S mit attr(B)⊆ attr(R) | ||
+ | * σB(R∪S)=σB(R)∪σB(S) | ||
+ | * σB(R∩S)=σB(R)∩σB(S) | ||
+ | * σB(R∖S)=σB(R)∖σB(S) | ||
+ | * πB(R∪S)=πB(R)∪πB(S) | ||
+ | * σA=B(R×S)=R⋈A=BS | ||
+ | |||
+ | === Algo === | ||
+ | - σ splitten | ||
+ | - σ nach unten | ||
+ | - σ und × => ⋈ | ||
+ | - π einfügen, um auf minimum beschränken | ||
+ | - π nach unten | ||
+ | - σ mergen | ||
+ | |||
+ | ===== Big Data ===== | ||
+ | * high-**volume** | ||
+ | * high-**velocity** | ||
+ | * high-**variety** | ||
+ | |||
+ | ==== Map-Reduce ==== | ||
+ | - **Map** \\ Data => KV-Pair | ||
+ | - **Shuffle** \\ Same key to same node | ||
+ | - **Reduce** \\ Marge Values per Key | ||
+ | |||
+ | ==== Zählanfrage auf unsicheren Daten ==== | ||
+ | F=(1−P(A)+x⋅P(A))⋅… | ||
+ | |||
+ | ==== Data Warehouse ==== | ||
+ | | OLTP | OLAP | | ||
+ | | Online Transaction Processing | Online Analytical Processing | | ||
+ | | Detail | ||
+ | | Aktuelle | ||
+ | | Ist eine quelle | ||
+ | | Veränderbar | ||
+ | |||
+ | < | ||
+ | |||
+ | === Relationales mapping === | ||
+ | Faktentabelle in der Mitte | ||
+ | == Snowflake == | ||
+ | Eine Tabelle pro Hierachieebene pro Dimension | ||
+ | |||
+ | == Star == | ||
+ | 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.1437313202.txt.gz · Last modified: 2020-11-18 18:10 (external edit)