Datenbanken II – Grundlegende formale Definitionen

Nach der kurzen praktischen Einführung in das Thema folgt jetzt ein recht trockener Artikel mit vielen Definitionen. Zu vielen Begriffen habe ich die englische Übersetzung in Klammern vermerkt, da viel Literatur ausschließlich in englischer Sprache verfügbar ist. Ich hoffe die kurze Schreibweise in Form von Aufzählungen ist auch noch gut lesbar und verständlich.

Formale Definitionen

Datenbank (Database)

  • Sammlung von Daten eines Themengebietes

Beispiel Bibliothek: Datenbank mit Informationen über Bücher im Sortiment, Ausleihende Personen, Buchungen (Wann hat wer welche Bücher geliehen?)

Datenbankverwaltungssystem (Database Management System, Abkürzung DBMS)

  • Sammlung von Programmen zur Erstellung, Verwaltung und Wartung einer Datenbank

Beispiel für entsprechende Software: Postgres, MySQL, Microsoft SQL Server

Datenbanksystem (Database System):

  • Datenbank und Datenbankverwaltungssystem

Unterscheidung zwischen Datenbankverwaltungssystem und Datenbanksystem

Ein DBMS ist eine Software, die für verschiedene Datenbanken eingesetzt werden kann. Wohingegen ein DBS ein konkretes System mit einer speziellen Datenbank ist (inkl. Datenbankverwaltungssystem).

Welche Aufgaben hat ein Datenbankverwaltungssystem?

  • Vereinfachung bei Erstellung einer Datenbank (Festlegung von Datentypen, Strukturen und Constraints (Bedingungen/Anforderungen an Daten, z.B. nur Daten zwischen 2000 und 2010 erlauben))
  • kümmert sich um den Prozess der Datenspeicherung
  • Verarbeitung von Datenbankanfragen und -updates (Queries and Updates)

Anforderungen an ein Datenbanksystem (DBS):

und Wünschenswerte Eigenschaften eines Datenbanksystems:

  • Abspeichern von sehr vielen Daten (man denke nur an den riesigen Amazon-Produktkatalog)
  • Einfacher Zugang zu den gespeicherten Daten für Nutzer (in der Regel über ein eigenes Benutzerinterface)
  • Effiziente Beantwortung von Datenbankanfragen –> kurze Antwortzeit (schnell)
  • Schutz der gespeicherten Daten: kein Zugriff für Unbefugte auf Datenbankinhalte
  • Datenkonsistenz: Daten werden nicht unbefugt verändert
  • Datenpersistenz (Dauerhaftigkeit): Robustheit bei Hardwareausfällen (z.B. Stromausfall) und entsprechende Routinen um nach solch einem Vorfall wieder zu einem konsistenten Zustand zu kommen
  • Nebenläufigkeit (Concurrency): parallele Bearbeitung von mehreren Anfragen
  • Kostengünstige Einrichtung, Verwendung und Wartung
  • Redundanzkontrolle: Vermeidung der doppelten Speicherung von Informationen
  • Standardkonformität

Was speichert ein Datenbanksystem?

  • Zusätzlich zu den Daten selbst werden auch Informationen über die Daten (Metadaten) gespeichert (z.B. Spaltenbezeichnung, Datentyp)
  • Informationen zur Benutzerkontrolle: verschiedene Rollen und Rechte

Warum verwendet man überhaupt ein Datenbanksystem und keine eigens geschriebene Software?

  • Abstraktionsvorteile: standardisierte Zugriffsoperationen obwohl die eigentliche Datenstruktur auch verändert werden kann
  • Vorteil von existierenden Standards: Zeitersparnis bei der Implementierung

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert