Datenbanken

  • Daten verwalten
  • mögliche Anforderungen:
    • große Menge an Daten
    • schneller Zugriff
    • paralleler Zugriff von mehreren Nutzern
    • Konsistenz (Korrektheit der Daten)
    • Sicherheit (Schutz vor unbefugtem Zugriff)
  • Datenbankmanagementsystem (DBMS): Software, die den Zugriff auf Daten regelt

CRUD-Operationen

Persistente (dauerhafte) Speicher bieten meist vier grundlegende Operationen zur Verwaltung der gespeicherten Daten:

  • Create (neu hinzufügen)
  • Read (auslesen)
  • Update (ändern)
  • Delete (löschen)

Transaktionen

  • bestehen aus einer oder mehreren zusammengehörigen Operationen
  • Beispiel Transaktion: Geld von einem zum anderen Konto transferieren
    • Konto1 -> Geld abbuchen
    • Konto2 -> Geld aufbuchen
  • kommt es zu Fehlern bei einer Operation, wird die Transaktion wieder rückgängig gemacht und der ursprüngliche Zustand wiederhergestellt

ACID Eigenschaften

  • Atomarität (Abgeschlossenheit): Transaktion muss vollständig erfolgreich abgeschlossen sein -> sonst Rollback (ursprünglicher Zustand wiederherstellen) -> z. B. Abbuchung ohne Auszahlung verhindern
  • Konsistenzerhaltung: Daten müssen (entsprechend festgelegten Regeln) nach Transaktion weiter korrekt sein -> z. B. nicht unterschiedliche Schreibweise für gleiche Information
  • Isolation (Abgrenzung): parallele Zugriffe müssen zum gleichen Ergebnis führen wie serielle (z. B. durch Sperrvermerk) -> z. B. Doppelbuchungen verhindern
  • Dauerhaftigkeit: Datenänderungen durch erfolgreiche Transaktionen bleiben bestehen -> kein Datenverlust, auch bei Systemausfall -> z. B. Bestellung nach Abschluss sicher gespeichert