Datenbank
Eine Datenbank ist die elektronische Form eines Karteikastens. Es handelt sich um eine Sammlung von Daten, die aus der Sicht des Benutzers zusammengehören, z. B. eine Personaldatenbank oder eine Lagerinventardatenbank. Es gibt hierarchische, relationale, multidimensionale und objektorientierte Datenbanken. Die Datenbank wird üblicherweise von einem Datenbankverwaltungssystem (DBMS) verwaltet. Ein DBMS zusammen mit einer oder mehreren Datenbanken nennt man Datenbanksystem (DBS).Datenbanksysteme sind heutzutage das Rückgrat jedes größeren Softwaresystems. Egal ob Webshop, Finanzbuchhaltung oder Wikipedia, überall steht ein DBMS dahinter.
Das grundlegende Element einer Datenbank ist der Datensatz (er entspricht einer Karteikarte). Aus einer gewissen Anzahl von Datensätzen wird eine Tabelle oder Liste gebildet. Mehrere Tabellen, die zu einer Gesamtheit zusammengefasst und untereinander verknüpft werden, sind dann eine Datenbank.
Table of contents |
2 Eigenschaften 3 Geschichte 4 Begriffserklärungen 5 Verschiedene Datenbankverwaltungssysteme 6 Siehe auch 7 Literatur 8 Weblinks |
Eine einfache Datenbank in einer Bibliothek könnte so aussehen:
Von einer Datenbank kann man dann sprechen, wenn sie folgende Eigenschaften hat:
Die erste Generation waren Lochkarten, welche jedoch unpraktisch, langsam und fehleranfällig waren. Ein weiterer Nachteil war, dass man sie sequentiell hintereinander lesen musste, was zur Folge hatte, dass alle Informationen die vor der Gesuchten standen, ausgelesen und verarbeitet werden mussten. Diese wesentlichen Einschränkungen machten das System nicht gerade populär.
Die zweite Generation der Datenbanken wurde ca. 1960 entwickelt. Zu diesem Zeitpunkt begann man, die Daten auf Festplatten zu halten, was einen großen Performance-Vorteil mit sich brache. Das machte auch Features wie Mehrbenutzerbetrieb und parallelen Zugriff möglich.
Zwischen 1965 und 1975 wurde die dritte Generation der Datenbanken entwickelt welche die Implementierung von Datenmodellen ermöglichte. Hierbei gab es hierarchische Modelle oder auch Netzwerkdatenbanken.
Vorgänger der relationalen Datenbanken waren die hierarchischen Datenbanken'. In ihnen wurden die Datensätze in einer Baumstruktur nach dem Eltern-Kind-Prinzip abgelegt. Die großen Nachteile von hierarchischen Datenbanken waren, dass Verknüpfungen über mehrere Ebenen nicht möglich waren, und - bedingt durch die Baumstruktur - die langen Suchzeiten beim Auffinden eines bestimmten Datensatzes. Ein Beispiel für eine hierarchische Datenbank ist IMS.
Im Gegensatz zu hierarchischen Datenbanken können die Datensätze in Netzwerkdatenbanken auf mehreren Wegen verknüpft sein und nicht nur entlang Eltern-Kind-Relationen. Eine noch häufig eingesetzte Netzwerkdatenbank ist IDMS der Firma Computer Associates.
Relationale Datenbanken sind heute am weitesten verbreitet. In ihnen werden Daten (Texte, Zahlen und Binärdaten) in Tabellen abgespeichert. Diese Tabellen sind mathematisch und datenbanktechnisch gesehen Relationen, daher der Name.
Damit die Datensätze eindeutig identifiziert werden können, muss ein eindeutiger Primärschlüssel vergeben werden. Zum schnelleren Auffinden der Daten werden Indizes über bestimmte Spalten, so genannte Schlüsselspalten, erzeugt. Eine relationale Datenbank besteht nicht nur aus einer Tabelle, sondern aus vielen, die miteineinander verknüpft sind. Diese Verknüpfungen werden Beziehungen genannt. Die Beziehung geschieht immer über einen Schlüssel, der eine Tabellenzeile und damit eine Informationsmenge eindeutig charakterisiert - z. B. eine Postadresse. Der Schlüssel könnte hier die Kundennummer sein. Über die Beziehung können nun andere Informationen in anderen Tabellen dazu aufgesucht werden, z. B. Rechnungen, Briefe, Behandlungen usw., ohne dass diese spezifische Konstellation an Informationen in einer ebenso spezifischen Tabelle stehen müsste.
In neuerer Zeit kommen objektorientierte Datenbanken immer mehr auf. Bei relationalen Datenbanken geht es zuerst um die Struktur, in der die jeweiligen Daten gespeichert werden sollen. Objektorientierte Datenbanken dagegen folgen der objektorientierten Programmiermethode (siehe objektorientierte Programmierung), d. h. es kommen erst die Daten, an denen sich die Datenbankstruktur dann orientiert. Ein Beispiel für ein objektorientiertes Datenbankverwaltungssystem ist Caché von Intersystems.
Objektrelationale Datenbanksysteme (ORDBMS) sind ein Bindeglied zwischen klassischen relationalen und objektorientierten Datenbanken. Sie kommen überall dort zum Einsatz, wo Mengen von Objekten in Relation zu anderen Daten oder Objekten gebracht werden müssen. Ein Einsatzgebiet sind unter anderem Systeme zur Erfassung geographischer Daten (GIS), bei denen Koordinaten miteinander verknüpft sind oder andere Daten referenzieren. Beispielsweise referenzieren mehrere Koordinanten-Objekte eine Straße; die Koordinaten stehen als in Relation mit einem Straßennamen und sind selbst Objekte, die zueinander eine Beziehung haben.
Eine Tabelle ist eine Zusammenfassung einer Anzahl von Datensätzen mit gleicher Struktur, vergleichbar einem Karteikasten.
z. B. Adresstabelle: Name, Vorname, Straße, Hausnummer, Ort, Telefonnummer
Alle Informationen, die zusammen einen Datensatz (Entität, Record) ausmachen, sind als eine Zeile der Tabelle realisiert. Man kann den Datensatz als Zeile anschauen oder übersichtlicher als Formular auf einer Seite darstellen.
Ein Datensatz ist vergleichbar mit einer Karte aus einem Karteikasten.
Ein (Daten-) Feld ist ein Teil eines Datensatzes, z. B. in einer Adresstabelle das Feld mit dem Nachnamen. In Feldern können sich Daten unterschiedlichster Art befinden, z. B. Text, Zahlen, Daten, Bilder, etc.
Ein Feld ist vergleichbar einer Zeile auf einer Karte eines Karteikastens. Hierbei werden Schlüssel und Attribute unterschieden. Der Schlüssel dient zum Identifizieren und Verknüpfen von Datensätzen, Attribute enthalten vom Schlüssel abhängige Daten. (Beispiel: Personalnummer ist Schlüssel; Eintrittsdatum und Geburtsdatum sind Attribute).
Eine Abfrage dient der Ansicht einer oder mehrerer verknüpfter Tabellen bzw. Teilen davon. Das Ergebnis ist wiederum eine (temporäre) Tabelle, die nach bestimmten Kriterien gefiltert sein kann.
Bei Karteikästen entspräche eine Abfrage der Auswahl einiger Karten nach bestimmten Kriterien, z. B. alle Kunden die mit A beginnen und daneben alle Karten der vom jeweiligen Kunden geliehenen Büchern.
Simple Abfragen sind z. B. Befehle zum alphabetischen Ordnen oder die Filterungen nach bestimmten Kriterien.
Üblicherweise werden Abfragen in der Abfragesprache SQL erstellt. Abfragen können bei den meisten DBMS auch ohne Wissen über SQL mit den jeweiligen Hilfsprogrammen erstellt werden.
Die aufbereitete Ansicht und/oder Zusammenfassung mehrerer Abfragen, dann letztendlich in Papierform, nennt man Report oder Bericht. Berichte oder Reports können mittels vom Hersteller mitgelieferter (bzw. in das DBMS integrierter) oder von Fremdherstellern gelieferter Software erzeugt werden. Diese Berichtsgeneratoren sind aber nicht Bestandteil des eigentlichen DBMS.
Beispiel
Durch Verwendung der Buch-Signaturen aus der ersten Tabelle und der Kundennummern aus der zweiten Tabelle kann in der vierten Tabelle festgestellt werden, welches Buch an welchen Kunden ausgeliehen ist. Hier weist man dann jedem Datensatz einen Status (Vorbestellung, Verleih, Statistik) zu, den er durchläuft. "Statistik" meint hier die zurückgebuchten (abgeschlossenen) Verleihvorgänge. Aus der dritten Tabelle kann man jedem Verleihvorgang einen Bearbeiter zuordnen.Eigenschaften
Es gibt verschiedene Typen von Datenbanken, darunter
Geschichte
Begriffserklärungen
Verschiedene Datenbankverwaltungssysteme
Siehe auch
Literatur
Weblinks