Datenbank: Unterschied zwischen den Versionen

Keine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Artikel}}
Unter einer '''Datenbank''' (engl. database) versteht man einen logisch zusammengehörigen Datenbestand. Dieser Datenbestand wird von einem laufenden [[Datenbank Management System]] verwaltet und für [[Anwendungsprogramm]]e und Benutzer unsichtbar auf nichtflüchtigen [[Speicher]]medien abgelegt.
Unter einer **Datenbank** (engl. database) versteht man einen logisch zusammengehörigen Datenbestand. Dieser Datenbestand wird von einem laufenden [[Datenbank Management System]] verwaltet und für [[Anwendungsprogramm]]e und Benutzer unsichtbar auf nichtflüchtigen [[Speicher]]medien abgelegt.


== Relationale Datenbank ==
== Relationale Datenbank ==
'''Relationale Datenbanken''' sind der traditionelle und weitverbreitetste Datenbanktyp. Sie basieren auf dem relationalen Modell, das [[Daten]] auf Basis von [[Relation]]en verwaltet. Vereinfacht kann man Relationen auch als [[Datenbanktabelle]]n bezeichnen. Die Daten werden in Tabellen mit Zeilen (Datensätze) und Spalten (Attribute) organisiert. Die Beziehungen zwischen den Tabellen werden durch Schlüssel (Primary Keys, Foreign Keys) realisiert. Relationale Datenbanken verwenden die [[SQL]] (Structured Query Language) für Datenabfragen und -manipulation und garantieren durch ACID-Eigenschaften (Atomarität, Konsistenz, Isolation, Dauerhaftigkeit) hohe Datenintegrität.
'''Relationale Datenbanken''' sind der traditionelle und weitverbreitetste Datenbanktyp. Sie basieren auf dem relationalen Modell, das [[Daten]] auf Basis von [[Relation]]en verwaltet. Vereinfacht kann man Relationen auch als [[Datenbanktabelle]]n bezeichnen. Die Daten werden in Tabellen mit Zeilen (Datensätze) und Spalten (Attribute) organisiert. Die Beziehungen zwischen den Tabellen werden durch Schlüssel (Primary Keys, Foreign Keys) realisiert. Relationale Datenbanken verwenden die [[Structured_Query_Language|SQL]] (Structured Query Language) für Datenabfragen und -manipulation und garantieren durch ACID-Eigenschaften (Atomarität, Konsistenz, Isolation, Dauerhaftigkeit) hohe Datenintegrität.


== Nicht-Relationale Datenbank ==
== Nicht-Relationale Datenbank ==
Zeile 10: Zeile 9:
== NoSQL-Datenbank ==
== NoSQL-Datenbank ==
'''NoSQL-Datenbanken''' (Not only SQL) sind eine Unterkategorie der nicht-relationalen Datenbanken. Sie umfassen verschiedene Datenmodelle:
'''NoSQL-Datenbanken''' (Not only SQL) sind eine Unterkategorie der nicht-relationalen Datenbanken. Sie umfassen verschiedene Datenmodelle:
* **Dokumentenorientierte Datenbanken** (z.B. MongoDB): Speichern Daten in dokumentenähnlichen Strukturen (JSON, BSON)
* ''Dokumentenorientierte Datenbanken'' (z.B. MongoDB): Speichern Daten in dokumentenähnlichen Strukturen (JSON, BSON)
* **Key-Value-Datenbanken** (z.B. Redis): Speichern Daten als Schlüssel-Wert-Paare
* ''Key-Value-Datenbanken'' (z.B. Redis): Speichern Daten als Schlüssel-Wert-Paare
* **Spaltenorientierte Datenbanken** (z.B. Cassandra): Organisieren Daten in Spalten statt Zeilen
* ''Spaltenorientierte Datenbanken'' (z.B. Cassandra): Organisieren Daten in Spalten statt Zeilen
* **Graphdatenbanken** (z.B. Neo4j): Modellieren Daten als Knoten und Kanten in einem Graphen
* ''Graphdatenbanken'' (z.B. Neo4j): Modellieren Daten als Knoten und Kanten in einem Graphen


NoSQL-Datenbanken bieten häufig eine bessere horizontale Skalierbarkeit und eignen sich besonders für unstrukturierte oder halbstrukturierte Daten.
NoSQL-Datenbanken bieten häufig eine bessere horizontale Skalierbarkeit und eignen sich besonders für unstrukturierte oder halbstrukturierte Daten.