Aufgabe 1

  • Datenbank
    • = Zusammenfassung von Daten verwaltet durch DBMS
    • vielen Nutzern über definierte Schnittstelle (SQL) gleichzeitig zur Verfügung gestellt
    • Vorteile:
      • unterschiedliche Benutzer und parallele Benutzerzugriffe
      • Verwaltung großer Datenbeständen
      • 24/7 online
      • Relation zwischen Daten
      • Datenhaltung und Benutzung der Daten durch Anwendungsprogramme strikt getrennt 
      • Integrität und Sicherheit der Daten
    • Nachteile
      • anspruchsvolle Bedienung (Fachpersonal)
      • hohe Kosten (Anschaffung, Support, Update)
  • Beispiel
    • Speicherung von Ausleihen in einer Software
    • mehrere Bibliothekar:innen können über ein Programm darauf zugreifen
    • Trennung der Ebenen: Nutzung des Anwenderprogramms, DB-Server

Aufgabe 2

  • DBS:
    • Kombination aus DB und DBMS
    • DB: eigentlicher Datenspeicher
    • DBMS: Steuerung und Verwaltung des Zugriffs auf die DB, z.B. durch Transaktionen
  • Transaktion
    • zum Schutz der Daten bei Fehlern werden nicht in die DB vor Abschluss geschrieben
    • Abschluss: COMMIT (Bestätigung und Schreiben der Transaktion in die DB durchs DBMS), ROLLBACK (Abbruch der Transaktionen)
    • Transaktionen können nicht konkurrent ausgeführt werden, sondern es wird gewartet, bis die aktuelle Transaktion ausgeführt wurde Locking
      • DirtyRead: T1 schreibt Daten, während T2 aus der selben Tabelle liest T2 liest alte Daten
      • LostUpdate: T1 schreibt Daten, während T2 auch Daten schreibt T2 überschreibt die durch T1 geschriebenen Daten und der Inhalt von T2 geht verloren

Aufgabe 3

  • ANSI-Modell:
    • Trennung der Ebene in einer Software
    • Externe Ebene (Anwendungssoftware):
      • Benutzersicht
      • Einschränkung des Zugriffs auf die Daten
      • Benutzererfahrung im Vordergrund
    • Konzeptionelle Ebene (DBS/DBMS):
      • Benutzer hat keinen Zugriff
      • Modellierung von Daten und Relationen ERM
      • Überprüfung von Integritätsbedingungen
    • Interne Ebene (DB):
      • physische Speicherung der Daten
  • Beispiel Webshop:
    • Externe Ebene: Webseite, User kann seine eigenen Daten einsehen und ändern, Admins können Daten aller User einsehen
    • Konzeptionelle Ebene: Speicherung der Daten in einer Tabelle users
    • Interne Ebene: Speicherung der Daten auf der Festplatte durch den Datenbankserver, z.B. MySQL
    • Vorteile:
      • Trennung der Rechte zwischen User und Admins
      • Anpassungsfähigkeit
      • Erweiterbarkeit / Unabhängigkeit von der Anwendungssoftware