Proposition: Prinzipien der NoSQL-Datenmodellierung

Die Prinzipien der NoSQL-Datenmodellierung unterscheiden sich deutlich von denen der relationalen Datenmodellierung, hauptsächlich aufgrund der oft schemalosen Natur von NoSQL-Datenbanken.

  • Datenzugriffsmuster (auch Query-first Approach):
    • Ein zentraler Punkt bei der NoSQL Datenmodellierung ist das Verständnis der Datenzugriffsmuster. Anstatt sich nur auf die Datenstruktur zu konzentrieren, wird die Datenstruktur oft um die Art und Weise herum entworfen, wie die Anwendung auf die Daten zugreift.
    • In Konsequenz wird das Datenmodell häufig so gestaltet, dass es entweder für schnelle Lesezugriffe (read-optimized) oder schnelle Schreibzugriffe (write-optimized) optimiert ist, je nach den Anforderungen der Anwendung.
  • Denormalisierung:
    • Während relationale Datenbanken Normalisierung nutzen, um Redundanz zu minimieren, fördern NoSQL-Datenbanken häufig die Denormalisierung, um Lesezugriffe zu beschleunigen. So werden oft beispielsweise Daten in mehreren Dokumenten dupliziert.
  • Referencing
    • Ähnlich wie bei relationalen Datenbanken können in NoSQL Datenbanken Fremdschlüssel (oder auch Arrays von Fremdschlüsseln) genutzt werden, um Verbindungen zwischen Objekten auszudrücken.
    • Ein Customer kann bspw. ein Array von Bestellungs-IDs vorhalten.
  • Embedding (auch aggregat-orientierte Modellierung nach Fowler)
    • Beim Embedding werden alle relevanten Daten in einem einzigen Objekt abgespeichert.
    • Ein Customer kann bspw. ein Array von Bestellungen enthalten.

Anmerkung

Visualisierung von NoSQL Modellierungen

Online Tools für die Visualisierung finden sich auf: