# Datenbankmanagementsystem (DBMS) erklärt

Kaum eine Computer- oder Webanwendung ist ohne geeignetes **Datenbanksystem** funktionsfähig. Gerade aus diesem Grund kann es durchaus hilfreich sein, sich etwas genauer mit dieser Thematik auseinanderzusetzen. Ebenso wichtig wie der eigentliche **Datenbestand** ist ein zugrundeliegendes **Datenbankmanagementsystem**, ohne das die Funktionalität einer Datenbank nicht gegeben wäre.

## Was ist ein DBMS?

Ein Datenbankmanagementsystem, kurz DBMS, bildet gemeinsam mit der Datenbasis ein Datenbanksystem (häufig wird für letzteres auch der allgemeine Begriff „Datenbank“ verwendet). Generell handelt es sich bei einem solchen DBMS um eine **Software**, die das **Modell eines Datenbanksystems festlegt** und damit die entscheidende Komponente ist, um eine Datenbank überhaupt aufbauen, verwalten und nutzen zu können. Erst wenn das jeweilige Datenbankmanagementsystem installiert und eingerichtet ist, können Nutzer den gewünschten Datenbestand einfügen und auslesen lassen. **Schreib- und Lesezugriff** sowie allgemeine **Administrationsfunktionen** werden durch anwendungsspezifische Schnittstellen und eine passende Datenbanksprache ermöglicht. Die bekannteste dieser Sprachen ist SQL (**S**tructured **Q**uery **L**anguage).

Hinweis Häufig werden die Begriffe „Datenbankmanagementsystem“ (DMBS) und „Datenbank“ fälschlicherweise gleichgesetzt, wenn es um die Bezeichnung der Software zur Verwaltung eines Datenbestands geht. Tatsächlich steckt hinter der Datenbank nicht mehr als die **Datenbasis in strukturierter Form**, während das DBMS die entscheidende Komponente zur **Realisierung dieser Strukturen** ist.

## Welche Bestandteile hat ein DBMS?

Ein Datenbankmanagementsystem besteht aus verschiedenen Komponenten, die allesamt zur reibungslosen Funktion der Software beitragen. Hierbei lässt sich das DBMS auf drei grundsätzliche Bestandteile aufteilen. Diese sind das Datenwörterbuch, die Datendefinitionssprache und die Datenmanipulationssprache.

- **Datenwörterbuch**: Das Datenwörterbuch (Data Dictionary) besteht aus einer Ansammlung von Metadaten. Diese Metadaten enthalten Informationen über den Inhalt der verschiedenen Daten im Datenspeicher. Weiterhin dienen sie als Informationsquelle über die Nutzungsautorisierung der Datensätze und die physische Repräsentation. Im Wörterbuch sind somit vereinfacht gesagt alle relevanten Informationen zu den gespeicherten Daten einer Datenbank enthalten.
- **Datendefinitionssprache**: Die Datendefinitionssprache bzw. Data Definition Language (DDL) ist dafür vorgesehen, die Inhalte einer Datenbank zu strukturieren. Einzelne Objekte wie Referenzen, Beziehungen oder Nutzerrechte können mithilfe der Definitionssprache geändert, gelöscht und erzeugt werden.
- **Datenmanipulationssprache**: Mithilfe der Datenmanipulationssprache bzw. Data Manipulation Language (DML) lassen sich in einer Datenbank enthaltene Datensätze löschen, einfügen, verändern und auslesen. Zudem ermöglicht es diese Sprache, die Daten zu verdichten und zu extrahieren.

## Aufgaben, Funktionen und Anforderungen eines Datenbankmanagementsystems

Das Datenbankmanagementsystem ist der wichtigste Bestandteil eines Datenbanksystems. Ohne das DBMS könnte die Datenbasis weder verwaltet, noch gesteuert oder kontrolliert werden. Zudem ist die Software für das Management aller lesenden und schreibenden Zugriffe auf die Datenbank zuständig. Ein weit verbreiteter Begriff zur Beschreibung von Funktionen und Anforderungen an die Transaktionen eines Datenbankmanagementsystems ist **ACID** (dt. AKID), ein Akronym für *atomicity*, *consistency*, *isolation* und *durability* (dt. Atomarität/Abgeschlossenheit, Konsistenz, Isolation und Dauerhaftigkeit). Die Teilbegriffe von ACID decken wiederum die wichtigsten Anforderungen an ein DBMS ab:

- Atomarität bzw. **Abgeschlossenheit** bezeichnet die „Alles oder nichts“-Eigenschaft von DBMS, dass nur gültige Abfragen in der richtigen Reihenfolge erfolgen und so die gesamte Transaktion korrekt vollzogen wird.
- **Konsistenz** setzt voraus, dass erfolgreiche Transaktionen eine stabile Datenbank hinterlassen, was eine ständige Überprüfung aller Transaktionen erfordert.
- Als **Isolation** wird die Anforderung bezeichnet, dass sich Transaktionen nicht gegenseitig „im Weg stehen“, was meist durch bestimmte Sperrfunktionen gesichert wird.
- **Dauerhaftigkeit** bedeutet, dass sämtliche Daten im DBMS dauerhaft gespeichert werden, auch nach Abschluss einer erfolgreichen Transaktion. Das gilt auch oder besonders bei Systemfehlern bzw. Ausfällen des DBMS. Essenziell für die Dauerhaftigkeit sind etwa Transaktionslogs, die sämtliche Vorgänge im DBMS mitprotokollieren.

Im Folgenden finden Sie eine weitere Unterteilung der Funktionen und Anforderungen eines Datenbankmanagementsystems über das ACID-Modell hinaus.

<table>
  <tbody>
    <tr>
      <td><strong>Funktion/Anforderung</strong></td>
      <td><strong>Erklärung</strong></td>
    </tr>
    <tr>
      <td>Speicherung von Daten</td>
      <td>Datenbanken speichern elektronische Texte, Dokumente, Passwörter und andere Informationen, die durch Abfragen aufgerufen werden können.</td>
    </tr>
    <tr>
      <td>Überarbeitung von Daten</td>
      <td>Die meisten Datenbanken erlauben es – je nach Zugriffsrechten –, gespeicherte Informationen direkt zu bearbeiten.</td>
    </tr>
    <tr>
      <td>Löschung von Daten</td>
      <td>In Datenbanken enthaltene Datensätze lassen sich lückenlos löschen. In einigen Fällen können gelöschte Daten wiederhergestellt werden, in anderen sind die Informationen dann für immer verloren.</td>
    </tr>
    <tr>
      <td>Verwaltung der Metadaten</td>
      <td>Informationen werden in Datenbanken meist mit Metadaten bzw. Metatags gespeichert. Diese schaffen Ordnung innerhalb der Datenbank und machen z. B. eine Suchfunktion möglich. Auch werden oft Zugriffsrechte über Metadaten geregelt.   
  
Die Datenverwaltung folgt vier fundamentalen Operationen: Create, Read/Retrieve, Update und Delete. Dieses als [CRUD-Prinzip](https://www.ionos.at/digitalguide/websites/web-entwicklung/crud-die-wichtigsten-datenbankoperationen/) bekannte Konzept gilt als Basis für die Datenverwaltung.</td>
    </tr>
    <tr>
      <td>Datensicherheit</td>
      <td>Datenbanken müssen sicher sein, damit Unbefugte keinen Zugriff auf gespeicherte Daten bekommen. Wesentlich für die Datensicherheit ist neben einem leistungsstarken Verschlüsselungsverfahren eine sorgfältige Verwaltung, besonders durch den Hauptadministrator. Datensicherheit meint meistens, die technischen Vorkehrungen zu treffen, um eine Manipulation oder den Verlust der Daten zu verhindern. Sie ist somit ein Kernkonzept des [Datenschutzes](https://blog.ec4u.com/sicherheit-datenbanken-dsgvo-datenschutz/ "Datenbanken und die DSGVO – ec4u-Blog").</td>
    </tr>
    <tr>
      <td>Datenintegrität</td>
      <td>Datenintegrität bedeutet, dass Daten innerhalb einer Datenbank bestimmte Regeln einhalten, damit die Korrektheit der Daten gesichert und die Geschäftslogik der Datenbank definiert ist. Nur so ist sichergestellt, dass die Datenbank als Ganzes konstant und konsistent funktioniert. In relationalen Datenbankmodellen gibt es vier dieser Regeln: Bereichsintegrität, Entitätsintegrität, referenzielle Integrität und logische Konsistenz.</td>
    </tr>
    <tr>
      <td>Mehrbenutzerbetrieb</td>
      <td>Datenbankanwendungen erlauben den Zugriff auf die Datenbank von verschiedenen Geräten aus. Im Mehrbenutzerbetrieb sind die Verteilung von Rechten und die Datensicherheit elementar. Eine Herausforderung für Datenbanken bei Mehrbenutzerbetrieb ist außerdem, wie man bei gleichzeitigem Lese- und Schreibzugriff vieler Nutzer Daten konsistent hält, ohne die Performance zu sehr zu beeinträchtigen.</td>
    </tr>
    <tr>
      <td>Abfragenoptimierung</td>
      <td>Auf der technischen Seite muss eine Datenbank jede Abfrage möglichst optimal verarbeiten können, um eine gute Performance zu gewährleisten. Geht eine Datenbank „zu viele Wege“ bei einer Datenabfrage, leidet darunter die Gesamtleistung des Datenbanksystems.</td>
    </tr>
    <tr>
      <td>Trigger und Stored Procedures</td>
      <td>Diese Verfahren sind innerhalb eines Datenbankmanagementsystems gespeicherte Mini-Anwendungen, die bei bestimmten Änderungsaktionen abgerufen („getriggert“) werden. Damit wird u. a. eine Verbesserung der Datenintegrität erzielt. Bei relationalen Datenbanken sind Datenbank-Trigger und Stored Procedures typische Prozesse – Letztere können auch zur Systemsicherheit beitragen, wenn Nutzer Aktionen nur noch mit vorgefertigten Prozeduren ausführen dürfen.</td>
    </tr>
    <tr>
      <td>Systemtransparenz</td>
      <td>Systemtransparenz ist vor allem bei verteilten Systemen relevant: Indem die Datenverteilung und -implementierung dem Nutzer vorenthalten wird, gleicht die Nutzung der verteilten Datenbank dann der einer zentralisierten Datenbank. Verschiedene Stufen der Systemtransparenz legen die Hintergrundprozesse offen oder verschleiern sie. Die wesentliche Funktion ist jedoch, die Nutzung möglichst zu vereinfachen.</td>
    </tr>
  </tbody>
</table>

Hinweis Wenn Sie eine eigene Datenbank betreiben, ist eine umfassende [Datensicherung](https://www.ionos.at/digitalguide/server/sicherheit/datensicherung-von-datenbanken/ "Datensicherung von Datenbanken") extrem wichtig!

## Welche DBMS-Typen/Datenbankmodelle gibt es?

Ein Datenbankmanagementsystem wird auf einem System installiert, um Datensätze optimal verwalten zu können. Wie bereits erwähnt, existieren dabei verschiedene Modelle, die sich in erster Linie hinsichtlich der vorgesehenen **Strukturierung der Daten** unterscheiden. Die Wahl eines DBMS ist also immer auch gleichbedeutend mit der Festlegung auf ein bestimmtes **Datenbankmodell**. Folgende Datenbankmodelle stehen zur Auswahl:

- Relational
- Hierarchisch
- Netzwerkorientiert
- Objektorientiert
- Dokumentorientiert

Am gängigsten und beliebtesten ist das [relationale Datenbankmodell](https://www.ionos.at/digitalguide/hosting/hosting-technik/relationale-datenbanken/ "Relationale Datenbanken"). Die Strukturierung der Daten erfolgt in diesem Modell in **Tabellenzeilen**. Der Vorteil liegt dabei in der Möglichkeit, bestimmte Relationen zwischen den einzelnen Zeilen zu schaffen und diese in Spalten darzustellen. Anders ist die Vorgehensweise bei einem **hierarchischen Datenbankmodell**: Die verschiedenen Daten stehen hier in einer Eltern-Kind-Beziehung zueinander, sind also nach einem **hierarchischen System** verbunden.

Einen weiteren Ansatz zur Datenorganisation stellt das **netzwerkorientierte Datenbankmodell** dar. Die Daten lassen sich hier innerhalb eines Netzwerks strukturieren. Auf eine andere Weise funktioniert das [objektorientierte Datenbankmodell](https://www.ionos.at/digitalguide/hosting/hosting-technik/objektorientierte-datenbank/ "Objektorientierte Datenbank"). Neben den Beziehungen der Datensätze spielen hier auch **Vererbungen** eine wichtige Rolle. Objekte können somit – reguliert durch das DBMS – Eigenschaften an andere Objekte weitervererben.

[Dokumentenorientiert Datenbankmodelle](https://www.ionos.at/digitalguide/hosting/hosting-technik/dokumentenorientierte-datenbank/ "Dokumentenorientierte Datenbank") sehen eine Lagerung der Datensätze in verschiedenen Dokumenten vor.

## Datenbankmanagementsysteme: Vorteile und Nachteile im Überblick

Als Grundpfeiler von Datenbanken zeichnen sich Datenbankmanagementsysteme durch diverse Stärken und Vorteile aus. Dennoch haben DBMS wie jede andere Software auch verschiedene Schwachpunkte, wie die folgende Auflistung der Vor- und Nachteile deutlich macht.

**Vorteile eines Datenbankmanagementsystems**:

- einfache Verwaltung großer Datensätze
- einfacher, effektiver Zugriff auf gespeicherte Daten
- hohe Flexibilität
- Datenintegrität und -konsistenz
- Zugriffskontrolle für Anwender (Datensicherheit und -schutz)
- hohe Verfügbarkeit

**Nachteile eines Datenbankmanagementsystems**:

- verhältnismäßig teure Startinvestition (inkl. zusätzliche Kosten für Hardware)
- für Spezialsoftware eher weniger effizient
- qualifizierte Mitarbeiter (Datenbankadministratoren) benötigt
- höhere Verwundbarkeit durch Zentralisierung der Daten

## DBMS-Beispiele: Die beliebtesten Datenbankmanagementsysteme

Es stehen zahlreiche verschiedene Datenbankmanagementsysteme zur Verfügung. Hier finden Sie die 15 populärsten und gängigsten DBMS:

- Microsoft Access – relational
- Microsoft SQL Server – relational
- [MySQL](https://www.ionos.at/digitalguide/server/knowhow/mysql-lernen-leicht-gemacht/) – relational
- [Oracle Database](https://www.ionos.at/digitalguide/hosting/hosting-technik/oracle-database-vorgestellt/) – relational
- OrientDB – dokumentenbasiert
- CouchDB – dokumentenbasiert
- Db2 (IBM) – relational
- IMS (IBM) – hierarchisch
- IBM Informix – relational
- MariaDB – relational
- Sybase ASE – relational
- [MongoDB](https://www.ionos.at/digitalguide/websites/web-entwicklung/mongodb-vorstellung-und-vergleich-mit-mysql/) – dokumentenorientiert
- [PostgreSQL](https://www.ionos.at/digitalguide/server/knowhow/postgresql/) – objektrelational (Mix aus relationalem und objektorientiertem Ansatz)
- Firebird – relational
- InterSystems Caché – objektrelational (Mix aus relationalem und objektorientiertem Ansatz)
- InterSystems IRIS – objektrelational (Mix aus relationalem und objektorientiertem Ansatz)


This is a markdown version of: [https://www.ionos.at/digitalguide/hosting/hosting-technik/datenbankmanagementsystem-dbms-erklaert/](https://www.ionos.at/digitalguide/hosting/hosting-technik/datenbankmanagementsystem-dbms-erklaert/) for AI/LLM consumption.