Datenbank
Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung.
Die wesentliche Aufgabe eines DBS ist es, große Datenmengen
effizient, widerspruchsfrei und dauerhaft zu speichern und benötigte
Teilmengen in unterschiedlichen, bedarfsgerechten Darstellungsformen
für Benutzer und Anwendungsprogramme bereitzustellen.
Ein DBS besteht aus zwei Teilen: der Verwaltungssoftware, genannt
Datenbankmanagementsystem (DBMS) und der Menge der zu verwaltenden
Daten, der eigentlichen Datenbank. Die Verwaltungssoftware organisiert
intern die strukturierte Speicherung der Daten gemäß eines
vorgegebenen Datenbankmodells (z.B. das relationale Datenbankmodell)
und kontrolliert alle lesenden und schreibenden Zugriffe auf die Datenbank.
Als externe Schnittstelle stellt sie eine Datenbanksprache zur Formulierung
von Abfragen, zum Einfügen und Ändern von Daten und für
administrative Befehle zur Verfügung. Die Datenbank enthält
zusätzlich zu den eigentlichen Daten noch die Beschreibung der
Daten, den sogenannten Datenkatalog.
Die in der Wikipedia verwendete Software arbeitet zum Beispiel mit
einem Datenbanksystem.
Neben der ursprünglichen Bedeutung in der elektronischen Datenverarbeitung,
die in diesem Artikel behandelt wird, wird der Begriff Datenbank heute
auch für Sammlungen von Daten verwendet, die nicht elektronisch
vorliegen. Mit rechtlichen Aspekten solcher Datenbanken im allgemeinen
Sinn beschäftigt sich das Datenbankrecht. Ob durch die bloße
Ansammlung von Daten eigenständige Schutzrechte entstehen können,
ist umstritten und in verschiedenen Ländern unterschiedlich geregelt.
Geschichte
Ausgehend von den Problemen bei der Verarbeitung herkömmlicher
Dateien wurde in den 1960er Jahren das Konzept eingeführt, Daten
durch eine Software-Schicht zwischen Betriebssystem (Dateiverwaltung)
und Anwendungsprogramm zu verwalten. Dieses Konzept begegnete der
Fehlentwicklung, dass Datenspeicher in Form von Dateien in der Regel
für eine spezielle Anwendung konzipiert wurden und ein erheblicher
Teil des Tagesgeschäfts mit Umkopieren, Mischen und Restrukturieren
der Dateien belastet war.
Eines der ersten großen DBMS war IMS mit der Sprache DL/I (Data
Language One), ein hierarchisches Modell. Parallel dazu definierte
CODASYL ein Modell für netzwerkartige Datenbanken.
Einen wesentlichen Fortschritt erzielte in den 1960er und 1970er
Jahren Edgar F. Codd mit seiner Forschungsarbeit am IBM Almaden Research
Center. Codd entwickelte die Grundlagen des ersten experimentellen
relationalen Datenbanksystems System R. Die Berkeley Group folgte
mit Ingres und der Abfragesprache QUEL.
Oracle (damals noch unter den Firmennamen SDL und RSI) verwertete
die Ergebnisse des System R und führte SQL zum kommerziellen
Erfolg. IBM folgte mit SQL/DS und DB2. Die relationalen Datenbanksysteme
verdrängten in den 1980ern die hierarchischen und netzwerkartigen
Systeme und der Großteil der Behörden, Konzerne, Institute
und mittelständischen Unternehmen stellte seine IT auf Datenbanksysteme
um.
Während in den 1990ern wenige kommerzielle Hersteller von Datenbank-Software
faktisch den Markt beherrschten (namentlich IBM, Informix, Microsoft
mit SQL Server und Oracle), erlangen in den 2000ern die Open-Source-Datenbankmanagementsysteme
eine immer größere Bedeutung. Vor allem MySQL und PostgreSQL
erzielten signifikante Marktanteile. Als Reaktion bieten die führenden
kommerziellen Hersteller gebührenfreie Versionen ihrer Datenbank-Software
an.
Das Datenbanksystem ist das ausgeführte DBMS zusammen mit den
zu verwaltenden Daten, der Datenbank. Ein DBS gewährleistet die
persistente Speicherung sowie die Konsistenz der Nutzdaten einer Institution
und bietet mit dem DBMS eine Schnittstelle zur Abfrage, Manipulation
und Verwaltung dieser Daten.
Datenbankmanagementsystem
Das Datenbankmanagementsystem (DBMS) ist die eingesetzte Software,
die für das Datenbanksystem installiert und konfiguriert wird.
Das DBMS legt das Datenbankmodell fest, hat einen Großteil der
unten angeführten Anforderungen zu sichern und entscheidet maßgeblich
über Funktionalität und Geschwindigkeit des Systems. Datenbankmanagementsysteme
selbst sind hochkomplexe Softwaresysteme.
Die Auswahl des gewünschten DBMS ist eine kritische Entscheidung.
Für Datenbankmanagementsystem wird (selten) auch der Begriff
Datenbankverwaltungssystem (DBVS) verwendet.
Gängig ist die Abkürzung RDBMS für ein relationales
Datenbankmanagementsystem.
Datenbank
In der Theorie versteht man unter Datenbank (engl. database) einen
logisch zusammengehörigen Datenbestand. Dieser Datenbestand wird
von einem laufenden DBMS verwaltet und für Anwendungssysteme
und Benutzer unsichtbar auf nichtflüchtigen Speichermedien abgelegt.
Um einen effizienten Zugriff auf die Datenbank zu gewährleisten,
verwaltet das DBMS in der Regel eine Speicherhierarchie, die insbesondere
auch einen schnellen Zwischenspeicher (Pufferpool) umfasst. Zur Wahrung
der Konsistenz des Datenbestandes müssen sich alle Anwendungssysteme
an das DBMS wenden, um die Datenbank nutzen zu können. Allein
administrativen Tätigkeiten, wie zum Beispiel der Datensicherung,
ist der direkte Zugriff auf den Speicher erlaubt.
Einzelne DBMS-Hersteller verwenden geringfügig voneinander abweichende
Begrifflichkeiten dafür, was man genau unter einer Datenbank
versteht: entweder alle Daten, die von einem laufenden DBMS bzw. der
Instanz verwaltet werden, oder nur die jeweils inhaltlich zusammengehörigen
Daten. Bei verteilten Datenbanken gibt es auch im Modell mehrere Datenbanken
auf unterschiedlichen Systemen, die miteinander verbunden sind.
Anforderungen
Ein Datenbanksystem muss im Gegensatz zur herkömmlichen Dateiverarbeitung
den folgenden Anforderungen genügen:
Strukturierung und Integrität
* Das DBS erlaubt die Verwaltung von strukturierten Daten.
o Die Strukturierung selbst ist Aufgabe der Datenmodellierung, es
entsteht das Schema, in dem die Daten vorliegen.
o Die interne Speicherung (internes Schema, Datenbank) ist zweitrangig
und wird vom DBMS gesteuert.
o Für Anwendungssysteme lassen sich Sichten auf das Schema definieren,
die ebenfalls vom DBMS umgesetzt werden.
* Das System soll durch eine geeignete zentrale Struktur Doppelspeicherungen
(Redundanzen) vermeiden.
* Das DBS erlaubt die logische Trennung von Anwendungsprogramm und
Datenspeicher. Diese Anforderungen sind anschaulich in der ANSI-SPARC-Architektur
beschrieben.
* Ein DBS überwacht aktiv Regeln zur Gewährleistung der
Datenintegrität.
o Es lehnt falsche Verweise auf Daten ab (Referenzielle Integrität).
o Es achtet auf korrekte Wertebereiche (zum Beispiel bei Prozentwert
zwischen 0 und 100).
Sprachen
* Das DBS stellt als Schnittstelle eine Datenbanksprache für
die folgenden Zwecke zur Verfügung:
o Datenabfrage und -manipulation (DML)
o Verwaltung der Datenbank (DDL)
o Berechtigungssteuerung (DCL)
Bei den relationalen DBMS sind die drei Kategorien in einer Sprache
(SQL) vereint, bei anderen Systemen existiert aber durchaus eine Trennung
in Form unterschiedlicher Sprachen.
Mehrbenutzerfähigkeit
* Für den Zugriff auf die Daten des DBS werden Berechtigungen
verwaltet. Ohne Berechtigung kann die entsprechende Operation nicht
durchgeführt werden.
* Für den (pseudo-)gleichzeitigen Zugriff mehrerer Anwendungen
bzw. Anwender regelt das DBMS Konkurrenzsituationen.
o Es werden Sperren (engl. locks) verwaltet.
o Es werden Systemprotokolle (engl. logs) verwaltet.
o Das DBS arbeitet transaktionsorientiert.
Diese Gruppe von Anforderungen zeichnet Datenbanksysteme im engeren
Sinne gegenüber funktional erweiterten Dateisystemen aus. In
Microsoft Access kann beispielsweise jeder Anwender durch einfaches
Überschreiben der Dateien das System unbrauchbar machen.
Betrieb
* Ein DBS verwaltet neben den Nutzdaten Daten über das DBS
selbst, also Daten über die Daten (Metadaten), zum Beispiel eine
Liste aller Tabellennamen einer relationalen Datenbank. Diese Daten
sind von der Administration oder anderen Berechtigten abfragbar. Metadaten
werden in einem so genannten Datenkatalog oder auch Data Dictionary
gehalten.
* Ein DBS arbeitet mit Datensicherung und Wiederherstellung (Backup
und Recovery).
* Ein DBS kann Daten im- oder exportieren.
* Ein DBS kann mit anderen DBS verbunden werden (verteilte Datenbanksysteme).
* Ein Datenbanksystem arbeitet auch bei großen Datenmengen mit
akzeptabler Antwortzeit und hohem Durchsatz.
Für den Betrieb von DBS ist die Berufsgruppe der Datenbank-Administratoren
(DBA) zuständig.
Charakteristika
Datenbankmodell
Grundlage für die Strukturierung der Daten und ihrer Beziehungen
zueinander ist das Datenbankmodell, das durch den DBMS-Hersteller
festgelegt wird. Je nach Datenbankmodell muss das Datenmodell an bestimmte
Strukturierungsmöglichkeiten angepasst werden:
* hierarchisch: Die Datenobjekte stehen in verdrahteten Eltern-Kind-Beziehungen
zueinander.
* netzwerkartig: Die Datenobjekte werden miteinander in Netzen verdrahtet.
* relational: Die Datenobjekte stehen in flachen Tabellen, Beziehungen
ergeben sich aus Werten der Tabellenspalten.
* objektorientiert: Die Datenobjekte werden miteinander verdrahtet,
sind gegebenenfalls miteinander verwandt und können vom System
immer eindeutig identifiziert werden.
Es existiert eine Vielzahl von Misch- und Nebenformen, wie zum Beispiel
das objektrelationale Modell.
Ausrichtung
Klassischerweise unterscheidet man eine Ausrichtung des Systems auf
viele kleine Anfragen (OLTP) oder lang andauernder Auswertungen (OLAP).
Es ist aber durchaus gängig, dass dasselbe System beiden Anforderungen
gerecht werden muss und zum Beispiel tagsüber für den OLTP-
und nachts für den OLAP-Betrieb gefahren wird. Die
DBA arbeitet dann unterschiedliche Konfigurationen aus (Hauptspeicher
des Servers, Prozess-Anzahl, Optimierungsstrategie beim Zugriff etc.).
Verwendung
Bedeutung
Datenbanksysteme sind heute ein zentraler Bestandteil fast jedes
Software-Systems. Sie verwalten Lagerbestände eines Unternehmens,
Patienteninformationen in Krankenhäusern, Telefondaten in der
Auskunft, Finanztransaktionen in der Bank. Damit stellen sie einen
kritischen Teil vieler Unternehmen und Behörden dar. Von der
Verfügbarkeit, Vollständigkeit und Richtigkeit der Daten
hängt die Aktionsfähigkeit eines Unternehmens ab. Die Datensicherheit
ist daher ein wichtiger und gesetzlich vorgeschriebener Bestandteil
der IT eines Unternehmens oder einer Behörde.
Beispiele
Die vollständige Automatisierung von Lagerbeständen macht
eine manuelle Verwaltung heute unmöglich. Der Verlust einer Lagerdatenbank
kann somit das Unternehmen in sehr kurzer Zeit finanziell ruinieren,
da georderte Produkte nicht ausgeliefert werden können und es
Monate dauern würde, die Bestände erneut zu inventarisieren.
Lagerdatenbanksysteme werden zum Tagesgeschäft (OLTP) und periodisch
für Analysen (OLAP) verwendet.
Alle Banken und Versicherungen arbeiten mit Datenbanksystemen, in
der Regel mit den relationalen DBMS Oracle oder IBM DB2/UDB. Im Datenbanksystem
sind alle Konteninformationen und Buchungen strukturiert abgelegt.
In diesem Einsatzumfeld haben Datenschutz und Datensicherheit höchste
Priorität. Ausrichtung: OLTP und OLAP.
Faktisch alle mittelständischen Unternehmen und Großkonzerne
arbeiten mit ERP-Systemen, deren Datenteil in Form von Datenbanksystemen
vorliegt (OLTP).
Dieser Artikel in seiner in der Wikipedia vorliegenden Fassung wird
neben allen anderen dort enthaltenen Artikeln durch ein Datenbanksystem
verwaltet (Wikipedia-Technik). Ausrichtung: OLTP.
Marktforschungsinstitute tragen eigene und Fremddaten in Data Warehouses
(Datenlager) zusammen, Ausrichtung hier: OLAP.
Artikel Datenbanksystem. In: Wikipedia, Die freie Enzyklopädie.
Bearbeitungsstand: 1. Februar 2007, 11:06 UTC. URL: http://de.wikipedia.org/w/index.php?title=Datenbanksystem&oldid=27213454
(Abgerufen: 3. Februar 2007, 09:44 UTC)
|