NoSQL

NoSQL Datenspeicherung (strukturierte Datenspeicher)

  • Not only SQL = Nicht nur SQL -> nicht relationale Datenbanken
  • verschiedene andere Speicherkonzepte (z. B. Dokumentenbasiert, Graphenbasiert, Objektbasiert)
  • Versuchen Joins zu vermeiden (dafür ggf. Daten doppelt und ACID meist nicht unterstützt)

Nachteile relationale Datenbanken

  • Nicht alle Daten gut als Tabellen darstellbar (z. B. Mediendaten, Texte, unstrukturierte Daten)
  • Schwierigkeiten bei sehr großen Datenmengen und sehr vielen Zugriffen
  • Joins können aufwändig sein und Daten durch Normalisierung unübersichtlich
  • für Einsatz auf zentralem Server entwickelt (skalieren vertikal, d. h. Ausstattung des Servers muss angepasst werden statt weitere Server)

Vorteile NoSQL Datenspeicherung

  • Daten nicht in starrer Tabellenform -> flexibler, da Tabellen angepasst werden müssen
  • prinzipiell alles speicherbar (Daten mit unbekanntem Aufbau; Daten deren Aufbau sich ändert)
  • Verteilte Datenspeichersysteme, d. h. Daten werden auf mehreren Servern verteilt
    • skalieren horizontal, d. h. bei Bedarf können neue Server hinzu genommen werden
    • Daten können von Server bezogen werden, der möglichst nah beim Client steht
  • besonders geeignet z. B. für Big Data, Streaming