quartz/content/Elective/InfoProcessing/sdms.md
2025-02-18 15:56:26 +01:00

2.5 KiB

title tags date draft
Scalable Data Management Systems
SDMS
2024-02-13 false

[!warning] Warnung

Diese Vorlesung arbeitete noch mit JAVA.

Eine Zusammenfassung der Inhalte der Vorlesung Scalable Data Management Systems aus dem Wintersemester 2023/2024.

Download

Inhalt:

  1. Single-Node DBMS & Speicherverwaltung

    • Ein Single-Node DBMS verarbeitet Daten auf einem einzelnen Server mit mehreren Schichten
    • Unterschied zwischen Row-Store (gut für Insert/Update/Delete) und Column-Store (effizient für Aggregationen).
  2. Verteilte Datenbanken (Distributed DBMS) & Skalierung

    • Shared-Nothing Architektur: Jeder Knoten hat eigene Daten, gute Skalierbarkeit.
    • Shared-Data Architektur (Cloud): Mehrere Server greifen auf dieselben Daten zu.
    • Fragmentierungsschemas: Daten werden nach Round-Robin, Hash oder Range verteilt.
    • Partitionierungstechniken für OLAP- und OLTP-Workloads, um Abfragen effizient zu verarbeiten.
  3. OLAP vs. OLTP & Indizierung

    • OLAP (Online Analytical Processing): Aggregierte Analysen großer Datenmengen.
    • OLTP (Online Transaction Processing): Schnelle Transaktionsverarbeitung mit hoher Parallelität.
    • B+-Bäume, Bitmap-Indizes und materialisierte Sichten verbessern Abfragegeschwindigkeit.
    • Joins in verteilten Systemen nutzen verschiedene Shuffling-Techniken (Symmetric, Asymmetric, Broadcast).
  4. Konkurrenzkontrolle & Replikation

    • ACID-Prinzipien (Atomicity, Consistency, Isolation, Durability) für sichere Transaktionen.
    • Replikation verbessert Fehlertoleranz (synchron/asynchron).
    • CAP-Theorem: Konsistenz, Verfügbarkeit und Partitionstoleranz können nicht gleichzeitig maximiert werden.
  5. Cloud-Datenbanken & Optimierungstechniken

    • Google Spanner, Snowflake, Amazon Aurora als Beispiele für verteilte Cloud-DBMS.
    • Query Optimierung: Regelbasierte (Selection Pushdown) und kostenbasierte (Join-Ordering, Cardinality Estimation) Optimierungen.
    • Machine Learning für Datenoptimierung (DeepDB, RSPN) zur Verbesserung der Kardinalitätsschätzungen.
    • MapReduce, Apache Spark & Streaming-Technologien zur effizienten Verarbeitung großer Datenmengen.