Datenbankmodelle: Unterschied zwischen den Versionen
Aus FI-Wiki
| (Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
== Datenbankmodelle == | == Datenbankmodelle == | ||
Datenbankmodelle beschreiben, | Datenbankmodelle beschreiben, '''wie Daten in einem Datenbanksystem strukturiert, gespeichert und miteinander verknüpft''' werden. | ||
Sie legen fest, wie Informationen organisiert sind und welche Beziehungen zwischen ihnen bestehen. Verschiedene Modelle eignen sich für unterschiedliche Einsatzgebiete. | Sie legen fest, wie Informationen organisiert sind und welche Beziehungen zwischen ihnen bestehen. Verschiedene Modelle eignen sich für unterschiedliche Einsatzgebiete. | ||
| Zeile 19: | Zeile 19: | ||
=== Relationales Datenbankmodell (am weitesten verbreitet) === | === Relationales Datenbankmodell (am weitesten verbreitet) === | ||
* Daten werden in | * Daten werden in '''Tabellen''' gespeichert | ||
* Tabellen sind über | * Tabellen sind über '''Schlüssel''' miteinander verknüpft | ||
* ermöglicht flexible Abfragen per SQL | * ermöglicht flexible Abfragen per [[SQL]] | ||
* starke mathematische Grundlage (Mengenlehre) | * starke mathematische Grundlage (Mengenlehre) | ||
* Standard in Unternehmen, Web-Anwendungen, Softwareentwicklung | * Standard in Unternehmen, Web-Anwendungen, Softwareentwicklung | ||
| Zeile 28: | Zeile 28: | ||
=== Dokumentenorientiertes Datenbankmodell (NoSQL) === | === Dokumentenorientiertes Datenbankmodell (NoSQL) === | ||
* speichert Daten als | * speichert Daten als '''Dokumente''' (z. B. [[JSON]], BSON) | ||
* kein festes Tabellenschema | * kein festes Tabellenschema | ||
* sehr flexibel | * sehr flexibel | ||
| Zeile 45: | Zeile 45: | ||
=== Graphdatenbankmodell === | === Graphdatenbankmodell === | ||
* speichert Daten als | * speichert Daten als '''Knoten und Kanten''' | ||
* ideal für hochgradig vernetzte Daten | * ideal für hochgradig vernetzte Daten | ||
* hervorragend für Social Media, Empfehlungsalgorithmen, Netzwerkstrukturen | * hervorragend für Social Media, Empfehlungsalgorithmen, Netzwerkstrukturen | ||
| Zeile 59: | Zeile 59: | ||
| Netzwerk || Netzwerk/Knoten || flexibler als Baum || sehr komplex || IDMS | | Netzwerk || Netzwerk/Knoten || flexibler als Baum || sehr komplex || IDMS | ||
|- | |- | ||
| Relational || Tabellen || flexibel, stark, SQL || können langsamer skalieren || MySQL, PostgreSQL | | Relational || Tabellen || flexibel, stark, [[SQL]] || können langsamer skalieren || MySQL, PostgreSQL | ||
|- | |- | ||
| Dokumentenorientiert || JSON-Dokumente || flexibel, schemafrei || schwierige Joins || MongoDB | | Dokumentenorientiert || JSON-Dokumente || flexibel, schemafrei || schwierige Joins || MongoDB | ||
Aktuelle Version vom 30. November 2025, 10:52 Uhr
Datenbankmodelle
Datenbankmodelle beschreiben, wie Daten in einem Datenbanksystem strukturiert, gespeichert und miteinander verknüpft werden. Sie legen fest, wie Informationen organisiert sind und welche Beziehungen zwischen ihnen bestehen. Verschiedene Modelle eignen sich für unterschiedliche Einsatzgebiete.
Hierarchisches Datenbankmodell
- Daten sind wie ein Stammbaum aufgebaut (Eltern–Kind-Beziehung)
- jeder Datensatz hat genau einen übergeordneten Eintrag
- schnelle Zugriffe, aber unflexibel bei komplexen Beziehungen
- heute kaum noch verwendet
Beispiel: Dateisystem-Struktur
Netzwerkdatenbankmodell
- Erweiterung des hierarchischen Modells
- ein Datensatz darf mehrere übergeordnete Einträge besitzen
- flexibler, aber komplizierte Verwaltung
- historisch bedeutend, heute selten
Relationales Datenbankmodell (am weitesten verbreitet)
- Daten werden in Tabellen gespeichert
- Tabellen sind über Schlüssel miteinander verknüpft
- ermöglicht flexible Abfragen per SQL
- starke mathematische Grundlage (Mengenlehre)
- Standard in Unternehmen, Web-Anwendungen, Softwareentwicklung
Beispiel: Tabellen für Kunden, Bestellungen, Produkte
Dokumentenorientiertes Datenbankmodell (NoSQL)
- speichert Daten als Dokumente (z. B. JSON, BSON)
- kein festes Tabellenschema
- sehr flexibel
- ideal für unstrukturierte oder stark variierende Daten
- oft genutzt in modernen Web- und Cloud-Anwendungen
Beispiel: MongoDB
Key-Value-Modell (NoSQL)
- einfachste Form der Datenspeicherung
- besteht aus Schlüssel → Wert
- extrem schnell und skalierbar
- ideal für Caching, Sessions, Konfigurationsdaten
Beispiel: Redis
Graphdatenbankmodell
- speichert Daten als Knoten und Kanten
- ideal für hochgradig vernetzte Daten
- hervorragend für Social Media, Empfehlungsalgorithmen, Netzwerkstrukturen
Beispiel: Neo4j
Zusammenfassung der Modelle
| Modell | Aufbau | Vorteile | Nachteile | Beispielsystem |
|---|---|---|---|---|
| Hierarchisch | Baumstruktur | schnell, einfach | unflexibel | IMS |
| Netzwerk | Netzwerk/Knoten | flexibler als Baum | sehr komplex | IDMS |
| Relational | Tabellen | flexibel, stark, SQL | können langsamer skalieren | MySQL, PostgreSQL |
| Dokumentenorientiert | JSON-Dokumente | flexibel, schemafrei | schwierige Joins | MongoDB |
| Key-Value | Schlüssel-Werte | extrem schnell | keine komplexen Abfragen | Redis |
| Graph | Knoten/Kanten | ideal für Beziehungen | ungeeignet für Tabellen | Neo4j |
Kurzmerksatz
Datenbankmodelle legen fest, wie Daten strukturiert werden, vom klassischen Tabellenmodell bis zu modernen NoSQL-Ansätzen.
