Zum Inhalt springen

Was ist eine Datenbank?

  • Daten

Als Datenbank bezeichnet man eine organisierte und strukturierte Sammlung von Informationen, die im Normalfall in einem Computersystem gespeichert sind (Quelle: Oracle). Der Betrieb und die Verwaltung der Datenbank erfolgt meist in einem Datenbankmanagementsystem (DBMS).

Was versteht man unter einer Datenbank?

In einer Datenbank werden große Datenmengen meist strukturiert abgespeichert und zur Abfrage verfügbar gemacht. Es handelt sich dabei nahezu immer um ein elektronisches System. Theoretisch handelt es sich jedoch auch bei analogen Informationssammlungen, wie beispielsweise bei einer Bibliothek, um eine Datenbank.

Bereits in den 1960er Jahren entstand die Notwendigkeit für zentrale Datenspeicher, da Dinge, wie die Zugriffsberechtigung auf Daten oder die Datenprüfung, nicht innerhalb einer Anwendungen, sondern gesondert davon erfolgen sollten.

Was ist ein DBMS?

Datenbanken bestehen aus zwei großen Komponenten. Zum einen der tatsächliche Datenspeicher und zum anderen das sogenannten Datenbankmanagementsystem (kurz: DBMS). Es fungiert einfach gesagt als Schnittstelle zwischen den Daten und den Endnutzern. MySQL ist ein Beispiel für ein konkretes DBMS von Oracle.

Zu den zentralen Aufgaben eines DBMS zählen beispielsweise:

  • Speicherung, Änderung und das Löschen von Daten
  • Definition und Einhaltung des Datenmodells
  • Hinzufügen von Nutzern und Anlegen der entsprechenden Rechte

Dieses Managementsystem sorgt weiterhin dafür, dass die sogenannten ACID Eigenschaften innerhalb des Datenspeichers eingehalten werden. Diese umfassen die folgenden Punkte:

  • Atomicity (A): Datentransaktionen, bspw. die Eintragung eines neuen Datensatzes oder das Löschen eines alten, sollen entweder ganz oder gar nicht ausgeführt werden. Für andere User ist die Transaktion erst sichtbar, wenn sie vollständig ausgeführt ist. In der Datenbank eines Finanzinstitutes beispielsweise wird die Überweisung von einem Konto auf ein anderes erst sichtbar wenn die Transaktion in beiden Tabellen vollständig ausgeführt ist.
  • Consistency (C): Diese Eigenschaft ist erfüllt, wenn jede Datentransaktion den Datenspeicher von einem konsistenten in einen konsistenten Zustand überführt.
  • Isolation (I): Wenn mehrere Transaktionen gleichzeitig stattfinden, muss der Endzustand derselbe sein, als wenn die Transaktionen getrennt voneinander stattfinden würden. Das heißt die Datenbank sollte den Stresstest bestehen. Also nicht durch Überlastung zu falschen Datenbanktransaktionen kommen.
  • Durability (D): Die Daten dürfen sich nur durch eine Transaktion ändern und nicht durch äußere Einflüsse veränderbar sein. Ein Softwareupdate darf beispielsweise nicht versehentlich dazu führen, dass sich Daten ändern oder womöglich gelöscht werden.

Welche Arten von Datenbanken gibt es?

Es gibt viele verschiedene Arten von Datensammlungen, die auch vor allem von der Nutzungsart innerhalb einer Organisation oder eines Unternehmens abhängig sind. Dabei spielen verschiedene Einflussfaktoren eine Rolle, wie beispielsweise die Anzahl der potenziellen Nutzer und Datenabfragen, sowie die Art der Daten, die abgespeichert werden sollen:

  • Relationale Datenbanken: Hierin werden Daten abgespeichert, die sich in einem tabellarischen Format, also mit Zeilen und Spalten, abspeichern lassen.
  • Verteilte Datenbanken: Wenn die Daten auf mehreren verschiedenen Computern abgelegt weren sollen, spricht man von verteilten Datenbanken. Dies bietet sich beispielsweise dann an, wenn man die Datensammlung ausfallsicher machen will oder viele Datenabfragen bewältigen soll.
  • Data Warehouse: Wenn Daten innerhalb eines Unternehmens zentral zugänglich sein sollen, spricht man von einem Data Warehouse. Hierin werden Daten aus verschiedenen Quellsystemen abgelegt und ein einheitliches Datenformt gebracht.
  • NoSQL Datenbank: Wenn die zu speichernden Daten nicht einem relationalen Schema entsprechen, beispielsweise bei unstrukturierten Daten, werden diese in sogenannten NoSQL („Not only SQL) Datensammlungen gespeichert.

Dies sind nur einige wenige der gängigsten Datenbanktypen. Über die Zeit haben sich hieraus noch deutlich mehr Arten herausgebildet, auf die wir in diesem Artikel jedoch nicht im Detail eingehen können.

Herausforderungen von Datenbanken

Wenn große Data Warehouses in Unternehmen eingeführt werden, haben die Administratoren mit verschiedensten Herausforderungen zu kämpfen. Die folgenden Punkte sollten bereits bei der Erstellung der Datensammlung beachtet werden:

  • Möglichkeit zur Steigerung der Datenmenge: Aufgrund der immer wachsenden Menge an Daten, die innerhalb eines Unternehmens anfallen und gespeichert werden sollen, muss das System genügend Ressourcen aufweisen zur Erweiterung der Datenmenge.
  • Datensicherheit: Wenn teilweise vertrauliche Informationen an einem zentralen Ort vorliegen, bieten sie natürlich Angriffsfläche für unerlaubte Zugriffe. Dazu zählt nicht nur die Sicherung vor Zugriffen von außen, sondern auch die Verteilung von Berechtigungen für Benutzer innerhalb der Organisation.
  • Skalierungsmöglichkeiten: Wenn ein Unternehmen wächst, wächst natürlich auch die Menge der Informationen. Darauf sollte die Datenbanklösung vorbereitet und in der Lage sein, mehr Nutzerabfragen und Daten verarbeiten zu können.
  • Datenaktualität: In der heutigen Zeit sind wir es gewohnt, Informationen ohne zeitlichen Verzug zu erhalten, gleiches gilt natürlich auch für Datenspeicher. Deshalb müssen Architekturen aufgebaut werden, die Informationen so schnell wie möglich verarbeiten und zur Verfügung stellen.

Structured Query Language

Die Structured Query Language (SQL) ist die am häufigsten genutzte Sprache bei der Arbeit mit relationalen Datenbanken. Die Sprache ist für weit mehr nutzbar als simple Abfragen, trotz des Namens. Damit können auch alle Operationen durchgeführt werden, die zur Erstellung und Instandhaltung von Datensammlungen nötig sind.

Die strukturierte Abfragesprache bietet viele Funktionen, um Daten zu lesen, zu verändern oder zu löschen. Sie kommt eigentlich in allen gängigen relationalen Datenbanksystemen zum Einsatz und ist weit verbreitet. Darüber hinaus bieten auch nicht-relationale Systeme Erweiterungen an, sodass die Abfragesprache auch trotz der nicht-tabellarischen Anordnung der Daten nutzbar ist. Dies liegt wahrscheinlich an den zahlreichen Vorteilen, die SQL bietet:

  • Es ist semantisch sehr einfach zu lesen und zu verstehen. Die Befehle können auch von Anfängern weitestgehend verstanden werden.
  • Die Sprache kann direkt innerhalb der Datenbankumgebung genutzt werden. Zur grundlegenden Arbeit mit Informationen müssen die Daten nicht erst aus der Sammlung in ein anderes Tool überführt werden. Einfache Berechnungen und Abfragen sind direkt in der Datensammlung möglich.
  • Verglichen mit anderen Tabellentools, wie beispielsweise Excel, können Datenanalysen mit der Structured Query Language einfach repliziert und kopiert werden, da alle Zugriff auf die gleichen Daten in der Sammlung haben. Somit führt dieselbe Abfrage auch immer zum gleichen Ergebnis.

Das solltest Du mitnehmen

  • Eine Datenbank ist eine zur organisierten und strukturierten Sammlung von Informationen.
  • Das relationale Speichersystem ist kommt noch am Häufigsten vor. Daneben werden aber auch NoSQL Lösungen oder Data Warehouses immer beliebter.
  • Bei der Erstellung solcher Datensammlungen gilt es viele, verschiedene Herausforderungen, wie beispielsweise die Skalierungsmöglichkeiten oder die Datensicherheit, zu beachten.
  • Zur Abfrage und Instandhaltung von Datenbanken wird in vielen Fällen immer noch auf die Structured Query Language (SQL) zurückgegriffen.

Andere Beiträge zum Thema Datenbank

  • Eine ausführliche Themenseite findest Du bei Oracle, von denen beispielsweise das bekannte DBMS namens „MySQL“ stammt.
close
Das Logo zeigt einen weißen Hintergrund den Namen "Data Basecamp" mit blauer Schrift. Im rechten unteren Eck wird eine Bergsilhouette in Blau gezeigt.

Verpass keine neuen Beiträge!

Wir versenden keinen Spam! Lies die Details gerne in unserer Datenschutzrichtlinie nach.

Schlagwörter:
Cookie Consent mit Real Cookie Banner