Suchen

Not only SQL Was ist eine NoSQL-Datenbank?

| Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Dr. Jürgen Ehneß

Unter den Begriff NoSQL-Datenbank fallen Datenbanksysteme, deren Datenmodell einen nicht-relationalen Ansatz verfolgt. Während in relationalen Datenbanken die Daten in Tabellen mit Zeilen und Spalten organisiert und gespeichert sind, nutzen nicht-relationale Datenbanken andere Datenmodelle. Nicht-relationale Datenbanken skalieren sehr gut und lassen sich für die Speicherung großer Datenmengen einsetzen.

Firma zum Thema

Die wichtigsten IT-Fachbegriffe verständlich erklärt.
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - Fotolia)

Die Abkürzung NoSQL steht für „Not only SQL“. Es handelt sich bei NoSQL-Datenbanken um Datenbanksysteme, die im Gegensatz zu den relational organisierten SQL-Datenbanken mit ihren Tabellen, Zeilen und Spalten einen nicht-relationalen Ansatz verfolgen. Zur Speicherung der Daten können verschiedene Modelle wie Graphen, Objekte, Dokumente, Listen oder Reihen zum Einsatz kommen.

Nicht-relationale Datenbanken lassen sich für Anwendungen nutzen, bei denen herkömmliche relationale Datenbanken an ihre Grenzen stoßen. Sie skalieren in der Regel sehr gut und sind für die Speicherung großer Datenmengen geeignet. Es sind zahlreiche kommerzielle oder Open-Source-basierte nicht-relationale Datenbanksysteme verfügbar. Typische Vertreter sind Cassandra, CouchDB, MongoDB, Neo4j, Riak oder Redis. Häufig sind die Systeme für den Betrieb in fehlertoleranten, hochverfügbaren und verteilten Strukturen ausgelegt.

Die verschiedenen Datenmodelle der nicht-relationalen Datenbanken

Nicht-relationale Datenbanken können auf sehr unterschiedlichen Datenmodellen basieren. Vier häufig angewandte Datenmodelle sind:

  • das Key-Value-Datenbankmodell,
  • das spaltenorientierte Datenbankmodell,
  • das dokumentenorientierte Datenbankmodell,
  • das graphenorientierte Datenbankmodell.

In einer nicht-relationalen Datenbank mit Key-Value-Datenbankmodell sind die einzelnen Werte festen Schlüsseln zugeordnet. Die Werte bestehen aus beliebigen strukturierten oder unstrukturierten Zeichen. Spaltenorientierte Datenbanken speichern die Daten nicht wie SQL-Datenbanken in Zeilen, sondern in Spalten. Die dokumentenorientierte Datenbank legt die Daten in Dokumenten ab. Ein Dokument kann schemalos oder strukturiert sein. Untereinander stehen die Dokumente nicht in Beziehung. Graphendatenbanken verwenden Graphen mit Knoten und Kanten zur Speicherung der Informationen.

Vorteile einer nicht-relationalen Datenbank

Gegenüber klassischen relationalen Datenbanken bietet die NoSQL-Datenbank einige Vorteile. Die Datenbanksysteme skalieren horizontal und eignen sich sehr gut für die Speicherung und Bereitstellung großer Datenmengen. Sie erzielen beim Speichern und Abfragen der Daten eine hohe Performance. Viele der Datenbanksysteme sind für den hochverfügbaren Betrieb auf fehlertoleranten, verteilten IT-Infrastrukturen ausgelegt.

Ihre Stärken beweisen die nicht-relationalen Datenbanken, wenn es um die Speicherung und das flexible Abfragen unstrukturierter Daten geht. Die Daten müssen nicht in das Tabellenschema einer SQL-Datenbank überführt werden, sondern lassen sich mit jeweils passenden Datenmodellen abbilden.

Kurz zusammengefasst, sind die Vorteile der nicht-relationalen Datenbanken folgende:

  • sehr gute Skalierbarkeit,
  • geeignet für große Datenmengen,
  • Unterstützung hochverfügbarer, fehlertoleranter IT-Infrastrukturen,
  • sehr gut für unstrukturiert vorliegende Daten geeignet,
  • hohe Performance beim Speichern und Abfragen von Daten,
  • keine zwanghafte Abbildung der Daten in Tabellen, Zeilen und Spalten,
  • verschiedene Datenmodelle verfügbar.
  • viele verschiedene kommerzielle und Open-Source-basierte Datenbanksysteme nutzbar.

(ID:46696447)

Über den Autor