📚
Lerndokumentationen
Datenbanken
Datenbanken
  • Willkommen
  • Grundlagen
    • SQL vs. NoSQL
    • NoSQL-Familien
    • CAP-Theorem
    • Vorgehen beim Erstellen
    • ACID - BASE
    • Indizes
  • SQL
    • Struktur
      • Datenbanken und Tabellen
        • Datentypen
        • Erstellen
        • Bearbeiten
        • Löschen
        • Constraints
          • NOT NULL
          • UNIQUE
          • PrimärschlĂĽssel
          • FremdschlĂĽssel
          • CHECK
          • DEFAULT
      • Daten
        • EinfĂĽgen
        • Aktualisieren
        • Löschen
    • Abfragen
      • Auswählen
      • Filtern
      • Operatoren
      • Reihenfolge
      • JOINS
      • Aggregatsfunktionen
        • Gruppieren
        • Filtern
      • Subqueries
    • Transaktionen
    • Datenschutz und Berechtigungen
      • Benutzerverwaltung
      • Rechte
    • Optimierung
  • MongoDB
    • Was ist MongoDB?
    • Struktur
      • Datenbanken und Collections
      • Daten
    • Abfragen
    • Indexing
    • Security
      • Authentifizierung und Autorisierung
      • Auditing
    • Backups
Bereitgestellt von GitBook
Auf dieser Seite
  • Konzeptionsansatz
  • Relationale Datenbanken
  • NoSQL
  • Trade-offs und Konsequenzen
  • Relationale Datenbanken
  • NoSQL
  1. Grundlagen

Vorgehen beim Erstellen

Die Entwicklung von Datenbankanwendungen folgt je nach gewähltem Datenbanksystem fundamental unterschiedlichen Ansätzen. Während relationale Datenbanken eine sorgfältige Vorausplanung der Datenstrukturen erfordern, setzen NoSQL-Datenbanken auf maximale Flexibilität bei der Datenspeicherung. Diese grundlegenden Unterschiede prägen den gesamten Entwicklungsprozess und beeinflussen direkt, wie Daten gespeichert und abgefragt werden können.

Konzeptionsansatz

Relationale Datenbanken

Strukturierte Planung in drei Phasen:

  • Konzeptionelles Datenmodell

  • Logisches Datenmodell

  • Physikalisches Datenmodell

Wichtig: Die Struktur muss vor der Implementierung vollständig durchdacht sein.

NoSQL

Fokus auf Anwendungsfälle:

  • Wie werden die Daten abgefragt?

  • Welchen Zweck erfĂĽllen die Daten?

  • Welche Ausgabeformate werden benötigt?

Wichtig: Die Struktur kann während der Entwicklung angepasst werden.

Trade-offs und Konsequenzen

Relationale Datenbanken

Hoher initialer Aufwand → Flexible Abfragemöglichkeiten

Vorteile:

  • Konsistente Datenstruktur

  • Komplexe Abfragen möglich

  • Effiziente Datenzugriffe durch JOINs

Nachteile:

  • Zeitaufwändige Planungsphase

  • Unflexibel bei Strukturänderungen

  • Hohe Komplexität bei der Modellierung

NoSQL

Minimaler initialer Aufwand → Eingeschränkte Abfragemöglichkeiten

Vorteile:

  • Schneller Projektstart

  • Flexible Schemaanpassungen

  • Einfache Skalierbarkeit

Nachteile:

  • Limitierte Abfragemöglichkeiten

  • Potenzielle Redundanzen

  • Weniger Konsistenzgarantien


Merke: Bei MySQL wird die Flexibilität durch vorherige Planung erkauft, bei NoSQL durch eingeschränkte Abfragemöglichkeiten.

VorherigeCAP-TheoremNächsteACID - BASE

Zuletzt aktualisiert vor 3 Monaten