Datenbank/Allgemeine Grundlagen

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

In diesem Artikel sollen Grundlagen im Umgang mit Datenbankmanagementsystemen (DBMS) vermittelt und verschiedene Programme dazu vorgestellt werden.

Was ist eine Datenbank?[Bearbeiten]

Ganz allgemein gesprochen ist jede Sammlung irgendwelcher Daten eine Datenbank, im einfachsten Fall eine Liste als einspaltige Tabelle wie beispielsweise ein Einkaufszettel oder Zuordnungen wie in Telefonbüchern. Der Begriff „Datenbank“ wird jedoch erst beim Vorliegen einer gewissen Komplexität verwendet. Ziel eines DBMS ist, auch sehr umfangreiche und komplexe Datensammlungen effizient zu verwalten und Anfragen ohne unnötigen Zeitverlust abzuarbeiten.

Der Begriff Datenbank wird umgangssprachlich oftmals nicht nur für eine abgegrenzte Einheit innerhalb eines Datenbankmanagementsystems verwendet, sondern auch für das gesamte DBMS.

Bestandteile einer Datenbank[Bearbeiten]

Eine Datenbank besteht im Allgemeinen aus zwei Dingen: Datensätzen und Metadaten.

Stellt man sich eine Datenbank als Tabelle vor, so würde jede Zeile einen Datensatz repräsentieren. Die „Spaltenüberschriften“ wären die Bezeichnungen der Attribute der Datensätze und die ausgefüllten Zellen jeder Zeile entsprächen den Attributwerten. Sind in unserer Tabelle Personendaten gespeichert, könnten beispielsweise Name, Vorname und Geburtsdatum die Attribute der Datensätze sein. Ein vollständiger Datensatz wäre dann

Name = „Mustermann“; Vorname = „Max“; Geburtsdatum = „3.1.1970“

Metadaten hingegen beschreiben die Struktur der Datenbank, sind also die Daten über die Daten. Diese sind in so genannten Datenverzeichnissen (englisch: Data Dictionary) gespeichert und enthalten Informationen über die Tabellen, Spalten, Indizes, Bedingungen und ähnliches.

Datenbank-Konzepte[Bearbeiten]

Hierarchische Datenbanken[Bearbeiten]

Hierarchische Datenbanken sind, wie der Name schon besagt, streng in einer Rangordnung strukturiert. Anschaulich erhält man eine Baumstruktur, Beispiele wären ein Stammbaum oder eine Ordnerstruktur auf einem Datenträger.

Der Vorteil einer hierarchischen Struktur ist, dass man sehr schnell und mit wenig Aufwand auf die Daten zugreifen kann. Weil es jedoch in einer hierarchischen Datenbank immer nur einen Baum geben kann und auch Verknüpfungen zwischen verschiedenen Ästen nicht möglich sind, müssen bei komplexeren Strukturen Daten mehrfach, d. h. an verschiedenen Stellen, gespeichert werden (Redundanz). Dies wiederum bedeutet einen hohen Wartungsaufwand, da man dieselbe Änderung ggf. an mehreren Stellen vornehmen muss. Ebenso ist die Struktur der Datenbank selbst nur schwer änderbar.

Aus diesen Gründen spielen hierarchische Strukturen heute kaum noch eine Rolle.

Netzwerk-Struktur[Bearbeiten]

Das Netzwerkdatenbankmodell kann als Verallgemeinerung des hierarchischen Datenbankmodells angesehen werden, anschaulich wird aus dem Baum ein Spinnennetz. Die Nutzer eines sozialen Netzwerkes und ihre Beziehungen untereinander oder die Verlinkungen im WWW ließen sich als Beispiel für Netzwerkdatenbanken ansehen.

Diese maximale Verknüpfung sorgt für minimale Redundanzen. Dadurch wird jedoch die Struktur sehr komplex und die Bedienung und Pflege komplexerer Datenbanken erfordert eine lange Einarbeitungszeit.

Aufgrund dessen ist die Bedeutung dieser Datenbanken weiter zurückgegangen.

Relationale Datenbanken[Bearbeiten]

Relationale Datenbanken bestehen aus mehreren Einzeltabellen, welche über sogenannte Schlüsselspalten miteinander verknüpft sind. Im Beispiel werden 2 Tabellen miteinander verknüpft; die Spalte „Wohnort“ in der Tabelle „Personen“ enthält nur Werte aus der Spalte „ID“ der Tabelle „Orte“.

Personen
ID Vorname Nachname Straße Wohnort
1 Hans Meier Hauptstraße 5 1
2 Max Mustermann Nebenstraße 19 1
3 Gunter Müller Dorfstraße 2 2
Orte
ID Name
1 Musterstadt
2 Kleindorf


Personen.Wohnort = Orte.ID

Auf diese Weise erhält man eine Datenbank, die die Vorteile von hierarchischer und Netzwerkdatenbank vereint: keine Redundanzen und eine trotzdem recht wenig komplexe Datenbank. Zudem sind solche Datenbanken in der Lage, Eingabefehler zu verhindern; es gibt beispielsweise eine Fehlermeldung wenn versucht wird, einer Person einen Wohnort zuzuweisen, den es in der Datenbank (noch) nicht gibt.

Viele moderne Datenbankmanagementsysteme sind wegen dieser Vorteile in dieser Struktur aufgebaut.

Objekt-bezogen[Bearbeiten]

Objektbezogene Datenbanken sind die neueste Struktur. Hier werden „Objekte“ gebildet, welche in den wesentlichen Parametern der Realität möglichst gleichen und in einer Datenbank gespeichert und verwaltet werden sollen. Außerdem gibt es noch objektrelationale Datenbanken, also Hybriden zwischen den zuletzt genannten Typen.

Weitere Quellen[Bearbeiten]