Grundlagen von Datenbanksystemen

Prof. Dr. Marcus Paradies (LMU)
Datenbanksysteme
17/10/2025

Kapitel 1: Grundlagen von Datenbanksystemen

  • Einführung in die Thematik und Relevanz von Daten in der modernen Welt, oft beschrieben als "das neue Öl des 21. Jahrhunderts".

  • Datenbasierte Dienste, die nicht auf physischen Ressourcen basieren (z.B. Uber, AirBnB).

  • Geschäftlicher Wert entsteht vollständig aus Daten. Unternehmen müssen ihre Daten sicher verwalten, um zu überleben.

  • Datenbanksysteme (DBS): universelle, standardisierte Systeme zur sicheren Speicherung von Daten.

Motivation

  • Daten als wertvolle Ressource:

    • Veränderungen in den letzten Jahren erläutert, dass Dienstleistungen zunehmend datengetrieben sind.

    • Quelle: The Economist - "The world’s most valuable resource is no longer oil, but data"

Beispiel: Amazon Prime Day 2024

  • Umsatz und Verkaufszahlen:

    • $14.2 Milliarden in den USA.

    • Verkaufszahlen pro Tag:

    • Tag 1: $7.1 Milliarden

    • Tag 2: $6.9 Milliarden

    • Insgesamt 93,513 Bestellungen, durchschnittlicher Bestellwert: $58.

    • 300 Millionen Artikel verkauft.

    • Prime Day als wichtiges Verkaufsereignis, zweitgrößtes nach Black Friday.

  • Quellen: AWS Blog & Fitsmallbusiness.com

Lernziele

  • Ziel des Kurses ist es, wie man ein Datenbanksystem effektiv nutzt und wie es funktioniert, um die Leistung optimieren zu können.

Probleme alternativer Lösungen

  • Diskussion über Herausforderungen, die bei der Verwaltung von Informationen über Studierende, Kurse und Einschreibungen auftreten können.

  • Anfang mit einem „Straw-Man Proposal“: Nutzung einer Programmiersprache wie Python.

  • Anforderungen:

    • Daten speichern, einlesen, Abfragen formulieren und ändern.

Umfrage

  • Interaktive Umfrage zur Erfassung der Probleme, die bei selbstgeschriebenen Programmen zur Datenverwaltung auftauchen könnten.

Probleme bei alternativen Lösungen

  • Typische Probleme, die durch alternative Lösungen (nicht-Datenbank Systeme):

    • Datenredundanzen und -inkonsistenzen

    • Eingeschränkte Zugriffsmöglichkeiten

    • Probleme beim Mehrbenutzerzugriff

    • Datenverluste

    • Verletzung der Datenintegrität

    • Sicherheitsprobleme

    • Hoher Entwicklungsaufwand

Was ist ein Datenbanksystem?

  • Definition:

    • Ein System zur Speicherung und Verwaltung von Daten, bestehend aus:

    • Datenbank (DB)

    • Datenbankmanagementsystem (DBMS)

  • Datenbank:

    • Integrierte Sammlung von Daten, die persistent gespeichert sind, beschreibt Informationen und Aktivitäten über Entitäten.

    • Beispiel: Universitätsdatenbank mit Informationen über Studierende, Lehrveranstaltungen usw.

Datenbankmanagementsystem (DBMS)

  • Sammlung von Softwarepaketen, die zur Speicherung, Zugriff und Verwaltung von Datenbanken entwickelt wurden.

Anwendung eines Datenbanksystems

  • Benutzer greifen über Anwendungen auf die Datenbank und das DBMS zu.

Zweck eines Datenbanksystems

  • Codds zwölf Regeln:

    • Datenintegration: Einheitliche Verwaltung aller Daten

    • Effizienter Datenzugriff: Bereitstellung von Datenbanksprachen zur Speicherung, Abfrage und Verwaltung

    • Datenkatalog: Metadaten über Strukturen der Datenbank

    • Benutzer-/Anwendungssichten: Verschiedene Sichten für unterschiedliche Benutzer

    • Integritätsbedingungen: Gewährleistung von Datenintegrität durch das DBMS

    • Sicherheitsmechanismen: Schutz der Daten vor Bedrohungen

    • Transaktionen: Zusammenfassen mehrerer Operationen zu logischen Einheiten

    • Synchronisation: Gleichzeitige Benutzertransaktionen

    • Wiederherstellung: Datenwiederherstellung nach Systemabstürzen

Geschichte des Datenmanagements

  • 60er Jahre:

    • Einfache Dateien und anwendungsspezifische Datenorganisation.

  • 70er und 80er Jahre:

    • Aufkommen relationaler Datenbanksysteme mit drei Ebenen Architektur und deklarativen Datenbanksprachen.

  • Evolution:

    • Codd’s relationales Modell als Grundlage und Entwicklung von Systemen wie System R und Ingres.

    • Marktentwicklung von $24 Milliarden für Datenbanktechnologien.

Entwicklungstrends

  • Hardware-Architekturen:

    • Unterstützung durch Mehrkernprozessoren, In-Memory-Datenbanksysteme (SAP HANA) etc.

  • Cloud-Datenbanken:

    • Hosting-Lösungen mit skalierbarem Datenmanagement.

  • Datenstromverarbeitung:

    • Online-Datenverarbeitung von Live-Daten für Echtzeitanalysen.

  • Big Data:

    • Verarbeitung von Petabyte-Daten durch hochskalierte Datenverarbeitungs- und Analysetools.

  • NoSQL-Datenbanken:

    • Nicht-relationale Datenbanksysteme, flexible Schemata, geringere Komplexität.

Das Datenbank-Ökosystem

  • Übersicht über verschiedene Arten von Datenbanksystemen (RDBMS, NoSQL, Cloud-Datenbanken), deren Anwendungen und spezifischen Merkmale.

Sichten auf Daten

  • Ziel eines DBMS: Abstrakte Sicht auf Daten zur Verbergung der Speicherdetails.

  • Ebenen:

    • Physisches Level: Wie Daten tatsächlich gespeichert sind.

    • Logisches Level: Welche Daten gespeichert werden (Entitäten und Beziehungen).

    • Sicht-/Anwendungslevel: Wie Benutzer die Daten sehen.

Schemata & Instanzen

  • Datenbankschema: Beschreibung einer Sammlung von Daten.

  • Instanz: Tatsächlicher Inhalt der Datenbank zu einem bestimmten Zeitpunkt.

Datenunabhängigkeit

  • Veränderbarkeit der Schema-Definitionen ohne Beeinflussung höherer Ebenen.

  • Logische und physische Datenunabhängigkeit definiert.

Datenmodelle

  • Sammlung von Konzepten zur Beschreibung von Daten und deren Beziehungen.

  • Beispiele: ER-Modell, relationales Modell.

Datenbanksprachen

  • DDL (Data Definition Language): zur Definition von Schemas. Beispiel: CREATE TABLE.

  • DML (Data Manipulation Language): zur Abfrage und Manipulation von Daten. Beispiel: INSERT INTO, SELECT.

Anwendungsarchitekturen

  • Client-Server-Modell wird typischerweise genutzt. Trennung der Funktionalitäten einer Anwendung in Benutzeroberfläche, Anwendungslogik und Datenverwaltungsfunktionen.

Zusammenfassung

  • Datenbanksysteme sind eine zentrale Säule für die Speicherung, Verwaltung und den Abruf von Daten in verschiedenen Anwendungsfeldern wie Finanzwesen und Gesundheitswesen.

Kursübersicht

  • Kapitel 1: Grundlagen von Datenbanksystemen

  • Kapitel 2: Relationales Modell

  • Kapitel 3: SQL

  • Kapitel 4: Konzeptionelles Datenbankdesign

  • Kapitel 5: Theorie relationaler Datenbanken

  • Kapitel 6: Speicher- und Dateistrukturen

  • Kapitel 7: Transaktionsverarbeitung

  • Kapitel 8: Anfrageverarbeitung

  • Kapitel 9: Ausblick