NoSQL: Unterschied zwischen den Versionen

Aus KGS-Wiki
Keine Bearbeitungszusammenfassung
Markierungen: Manuelle Zurücksetzung Visuelle Bearbeitung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
'''NoSQL'''<ref>Informationen aus: [https://www.bigdata-insider.de/was-ist-nosql-a-615718/ NoSQL - BigData-Insider]</ref> '''(Not only SQL)''' steht für Datenbanksysteme, die einen nicht-relationalen Ansatz verfolgen. Diese Datenbanken skalieren horizontal und eignen sich besonders für Big-Data-Anwendungen.
'''NoSQL'''<ref>Informationen aus: [https://www.bigdata-insider.de/was-ist-nosql-a-615718/ NoSQL - BigData-Insider]</ref> '''(Not only SQL)''' steht für Datenbanksysteme, die einen nicht-relationalen Ansatz verfolgen. Diese Datenbanken skalieren horizontal und eignen sich besonders für [https://www.oracle.com/de/big-data/what-is-big-data/ Big-Data-Anwendungen].


{{Lückenhaft}}
{{Lückenhaft}}

Version vom 22. März 2023, 09:29 Uhr

NoSQL[1] (Not only SQL) steht für Datenbanksysteme, die einen nicht-relationalen Ansatz verfolgen. Diese Datenbanken skalieren horizontal und eignen sich besonders für Big-Data-Anwendungen.

🕳
Lückenhaft

In diesem Artikel oder Abschnitt fehlen noch wichtige Informationen.

Hilf dem KGS-Wiki, indem du sie recherchierst und einfügst.

Die Architektur von NoSQL-Datenbanken sind auf Größe und Performance ausgelegt. Aufgrund ihres Aufbaus sind für große Datenmengen, wie sie in Big-Data-Anwendungen verwendet werden, gut geeignet.

Es gibt verschiedene NoSQL-Ansätze und Datenbankmodelle, die in vier Hauptkategorien eingeteilt werden können:

  • Dokumenorientierte Datenbanken
  • Spaltenorientierte Datenbanken
  • Key-Value-Datenbanken
  • Graphendatenbanken

Typen

Dokumentenorientierte Datenbanken:

Dokumentenorientierte Datenbanken speichern Daten als Dokumente, die in einem bestimmten Format wie JSON oder XML vorliegen. Ein solches Dokument kann eine ganze Menge an Informationen speichern, und es ist flexibel genug, um verschiedene Arten von Daten aufzunehmen. Dokumentenorientierte Datenbanken sind eine gute Wahl für Anwendungen, die viele komplexe Datenstrukturen benötigen.

Spaltenorientierte Datenbanken:

Spaltenorientierte Datenbanken speichern Daten in Spalten anstatt in Reihen. Die Daten sind somit in einer Matrix organisiert, wobei jede Spalte eine bestimmte Art von Daten enthält. Spaltenorientierte Datenbanken sind sehr effizient bei der Verarbeitung von großen Datenmengen und eignen sich daher gut für Anwendungen, die eine hohe Skalierbarkeit erfordern, wie z.B. Business Intelligence oder Data Warehousing.

Key-Value-Datenbanken:

Key-Value-Datenbanken speichern Daten als Schlüssel-Wert-Paare. Die Daten sind somit unstrukturiert und können beliebig groß sein. Der Schlüssel ist ein eindeutiger Identifier, mit dem auf die gespeicherten Daten zugegriffen werden kann. Key-Value-Datenbanken sind sehr schnell und einfach zu verwenden, was sie zu einer guten Wahl für Anwendungen macht, bei denen schnelle Lese- und Schreibzugriffe erforderlich sind.

Graphendatenbanken:

Graphendatenbanken speichern Daten als Knoten und Kanten. Die Knoten repräsentieren Entities wie Personen oder Orte, während die Kanten Beziehungen zwischen den Knoten darstellen. Graphendatenbanken sind sehr gut geeignet für Anwendungen, die komplexe Beziehungen zwischen Daten haben, wie zum Beispiel Social-Media-Plattformen oder Empfehlungssysteme.

Unterschiede

Im Gegensatz zu relationalen Datenbanken verwenden NoSQL-Datenbanken alternative Datenbankmodelle wie Wertepaare, Objekte, Dokumente oder Listen und Reihen für die Organisation der Daten. Sie sind für Anwendungen optimiert, bei denen SQL-basierte relationale Datenbanken nicht ausreichen. Sie werden oft auch strukturierte Datenspeicher bezeichnet.

Modelle

Einige der bekanntesten NoSQL-Datenbanken sind:

Leistung

Ben Scofield hat die Leistung von NoSQL-Datenbanken wie folgt bewertet:[2]

Datenmodell Leistung Skalierbarkeit Flexibilität Komplexität Funktionalität
Key-Value hoch hoch hoch keine unterschiedlich (keine)
Spaltenorientiert hoch hoch mittel gering minimal
Dokumentenorientiert hoch unterschiedlich (hoch) hoch gering unterschiedlich (gering)
Graphbasiert unterschiedlich unterschiedlich hoch hoch Graphentheorie
RelationalRelational unterschiedlich unterschiedlich gering mittel Relationale Algebra

Weblinks

  1. Informationen aus: NoSQL - BigData-Insider
  2. Tabelle aus: NoSQL - Wikipedia