Grundlagen zu Datenbanken
Volatile versus persistente Speicherung
Wenn wir beispielsweise ein einfaches Python-Programm schreiben, speichern wir Daten (Werte) in Variablen ab.
Sobald das Programm geschlossen ist oder sobald wir den Computer ausschalten, sind die Daten weg. Da spricht man davon, dass die Daten volatil sind. Sie "verfliegen", sobald der Computer ausgeschaltet wird.
Um Daten längerfristig zu speichern, benötigen wir ein Werkzeug, das uns dabei hilft. Das Werkzeug kann ein Dateisystem sein, um Werte in Dateien zu speichern Ein Word-Dokument speichern wir beispielsweise in einer Word-Datei ab (Endung .docx). Eine Excel-Datei mit Daten drin (z.B. eine Notenliste oder eine Klassenliste) speichern wir als Excel-Datei ab (Endung .xlsx).
Sollen Variablen eines Python-Programms auch über die Dauer dessen Laufzeit hinaus gespeichert werden, könnte man diese beispielsweise in einer Textdatei speichern (Dateiendung z.B. .txt oder .csv).
Dieses Speichern von Werten in Dateien nennt man, im Gegensatz zu volatil, nun persistent. Persistente Daten bleiben auf der Festplatte oder SSD gespeichert, auch wenn der Computer ausgeschaltet wurde.
Eine Datenbank im analogen Sinn
Eine Datenbank im analogen Sinn sehen Sie auf dem folgenden Bild:
Obwohl das Ganze ziemlich chaotisch aussieht, steckt da vermutlich ein System dahinter. Zwischen den Karteikarten sind teilweise Karten in hochkant eingefügt, welche die Karten gruppieren oder sortieren.
Die Karten werden so beschriftet und gruppiert sein, dass die Person, welche damit arbeitet, das Gesucht auch finden wird.
Was eine Datenbank ist
Eine Datenbank aus Sicht der Informatik ist eine strukturierte Sammlung von Daten, also ähnlich wie die Zettelkästen auf dem obigen Bild, nur halt mit Software umgesetzt.
Definition
Die folgende Definition ist kurz und knackig:
Ein Datenbanksystem (DBS) ist eine Zusammenfassung von strukturierten Daten (Datenbank, DB), die von einer speziellen Software (Data Base Management System, DBMS) verwaltet und über eine definierte Schnittstelle vielen Nutzern oder Anwendungen gleichzeitig und kontrolliert (nur den berechtigten Personen) zur Verfügung gestellt werden.
Quelle: https://oinf.ch/kurs/vernetzung-und-systeme/datenbanken/
