Datenbankmodelle: Unterschied zwischen den Versionen
Aus FI-Wiki
Keine Bearbeitungszusammenfassung |
|||
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
Datenbankmodelle beschreiben, '''wie Daten in einem Datenbanksystem strukturiert, gespeichert und miteinander verknüpft''' werden. | |||
Datenbankmodelle beschreiben, | |||
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. | ||
== Hierarchisches Datenbankmodell == | |||
* Daten sind wie ein Stammbaum aufgebaut (Eltern–Kind-Beziehung) | * Daten sind wie ein Stammbaum aufgebaut (Eltern–Kind-Beziehung) | ||
* jeder Datensatz hat genau einen übergeordneten Eintrag | * jeder Datensatz hat genau einen übergeordneten Eintrag | ||
| Zeile 12: | Zeile 10: | ||
Beispiel: Dateisystem-Struktur | Beispiel: Dateisystem-Struktur | ||
== Netzwerkdatenbankmodell == | |||
* Erweiterung des hierarchischen Modells | * Erweiterung des hierarchischen Modells | ||
* ein Datensatz darf mehrere übergeordnete Einträge besitzen | * ein Datensatz darf mehrere übergeordnete Einträge besitzen | ||
| Zeile 18: | Zeile 16: | ||
* historisch bedeutend, heute selten | * historisch bedeutend, heute selten | ||
== 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 27: | Zeile 25: | ||
Beispiel: Tabellen für Kunden, Bestellungen, Produkte | Beispiel: Tabellen für Kunden, Bestellungen, Produkte | ||
== 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 36: | Zeile 34: | ||
Beispiel: MongoDB | Beispiel: MongoDB | ||
== Key-Value-Modell (NoSQL) == | |||
* einfachste Form der Datenspeicherung | * einfachste Form der Datenspeicherung | ||
* besteht aus '''Schlüssel → Wert''' | * besteht aus '''Schlüssel → Wert''' | ||
| Zeile 44: | Zeile 42: | ||
Beispiel: Redis | Beispiel: Redis | ||
== 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 51: | Zeile 49: | ||
Beispiel: Neo4j | Beispiel: Neo4j | ||
== Zusammenfassung der Modelle == | |||
{| class="wikitable" style="width:100%; text-align:center;" | {| class="wikitable" style="width:100%; text-align:center;" | ||
! Modell !! Aufbau !! Vorteile !! Nachteile !! Beispielsystem | ! Modell !! Aufbau !! Vorteile !! Nachteile !! Beispielsystem | ||
| Zeile 59: | Zeile 57: | ||
| 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 | ||
| Zeile 68: | Zeile 66: | ||
|} | |} | ||
== Kurzmerksatz == | |||
'''Datenbankmodelle legen fest, wie Daten strukturiert werden, vom klassischen Tabellenmodell bis zu modernen NoSQL-Ansätzen.''' | '''Datenbankmodelle legen fest, wie Daten strukturiert werden, vom klassischen Tabellenmodell bis zu modernen NoSQL-Ansätzen.''' | ||
Aktuelle Version vom 5. Januar 2026, 15:12 Uhr
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.
