Diese wissenschaftliche Arbeit soll einen grundlegenden Überblick über die Themen relationale Datenbanken und nicht relationale Datenbanken geben. Durch die enorm wachsenden Datenmengen, extrem vielen Zugriffen auf diese Daten und der Notwendigkeit zur horizontalen Skalierung, treten neue Datenbankmodelle und –konzepte auf dem Markt auf. Der Fokus dieser Seminararbeit liegt daher auf den Charakteristika dieser beiden Datenbankmodelle und den sich ändernden Anforderungen, hervorgerufen durch das Aufkommen des Webs 2.0 an eine Datenbank. Der Aufbau dieser Seminararbeit ist so strukturiert, dass anfänglich kurz auf die Geschichte und ein paar Grundlagen der relationalen Datenbanken eingegangen wird. Danach folgt eine detaillierte Beschreibung des ACID-Konsistenzmodells (Atomicity, Consistency, Isolation, Durability) und dessen Eigenschaften, die mit Beispielen verdeutlicht werden. Im zweiten Teil der Seminararbeit wird detailliert auf das Thema „nicht relationale Datenbanken“ eingegangen. Zunächst erfolgt ein kurzer Überblick über die Entstehungsgeschichte der nicht relationalen Datenbanken. Danach wird näher auf die Schwachstellen von relationalen Datenbanken eingegangen und auf diesem Weg ein Vergleich zu NoSQL geschaffen. Anschließend werden Erkenntnisse aus dem CAP-Theorem bei verteilten Datenbanken vorgestellt. Im Folgenden wird das Konsistenzmodell BASE, dass von NoSQL-Datenbanken vorzugsweise eingesetzt wird, erläutert.
Inhaltsverzeichnis
1 Einleitung
2 Relationale Datenbanken
2.1 Geschichtliches
2.2 Grundlagen
2.3 ACID-Konsistenzmodell
2.3.1 Atomicity
2.3.2 Isolation
2.3.3 Consitency
2.3.4 Durability
3 Nicht relationale Datenbanken
3.1 Geschichtliches
3.2 Warum NoSQL? - Ein Vergleich
3.3 CAP-Theorem
3.3.1 Consistency
3.3.2 Availability
3.3.3 Partition Tolerance
3.4 BASE-Modell
4 Zusammenfassung
Zielsetzung & Themen
Die vorliegende Arbeit verfolgt das Ziel, die grundlegenden Unterschiede zwischen relationalen und nicht relationalen Datenbanken aufzuzeigen, um deren Eignung für moderne Anforderungen wie Skalierbarkeit und Verfügbarkeit im Web 2.0 zu bewerten.
- Grundlagen relationaler Datenbanksysteme und des ACID-Modells
- Entwicklung und Beweggründe für nicht relationale Datenbanken (NoSQL)
- Analyse des CAP-Theorems für verteilte Systeme
- Gegenüberstellung von ACID-Konsistenz und BASE-Modell
Auszug aus dem Buch
2.3.1 Atomicity
Der englische Begriff „Atomicity“ bedeutet Atomarität und Abgeschlossenheit. Durch den Einsatz von Transaktionen wird eine Operation entweder ganz oder gar nicht ausgeführt („Alles oder Nichts-Semantik“). Die Anweisungen werden einzeln ausgeführt, aber global erst dann für gültig erklärt, wenn sie erfolgreich und vollständig abgeschlossen sind. Dies bezieht sich vor allem auf die im Rahmen der Transaktion auszuführenden Änderungen in einer Datenbank (vgl. Dr. Härder & Dr. Rahm, 2001, p. 393).
Im folgenden Beispiel wird anhand einer klassischen Banküberweisung eine Transaktion beschrieben. Diese Transaktion wird in Abbildung 1 (s. Seite 3) verdeutlicht.
Im ersten Schritt wird vom eigenen Konto mit der Kontonummer 1000 der zu überweisende Betrag über 50,00 € abgebucht. Im zweiten Schritt muss dieser Betrag auf das Konto des Empfängers mit der Kontonummer 1001 gutgeschrieben werden. Der letzte Schritt besteht aus der Protokollierung des gesamten Vorgangs, der anhand der drei Anweisungen „Begin Transaction“, „Commit“ und „Rollback“ eingeleitet werden kann:
• „Begin Transaction“ SQL-Anweisungen wie „Insert“, „Update“ und „Delete“ werden von nun an protokolliert.
• „Commit“ Die Transaktion wird abgeschlossen, indem alle Änderungen verbucht und für den Benutzer sichtbar werden.
• „Rollback“ Alle Änderungen werden wieder verworfen.
Zusammenfassung der Kapitel
1 Einleitung: Hier wird die Relevanz wachsender Datenmengen für neue Datenbankkonzepte begründet und der Aufbau der Arbeit skizziert.
2 Relationale Datenbanken: Dieses Kapitel erläutert die Ursprünge relationaler Modelle und definiert mit dem ACID-Modell die Bedingungen für transaktionale Sicherheit.
3 Nicht relationale Datenbanken: Hier werden die Gründe für den Aufstieg von NoSQL, die Auswirkungen des CAP-Theorems sowie das BASE-Modell für verteilte Datenhaltung behandelt.
4 Zusammenfassung: Dieses Kapitel fasst die Erkenntnisse zusammen und stellt fest, dass beide Datenbanktypen je nach Anwendungszweck ihre Berechtigung behalten.
Schlüsselwörter
Datenbankmanagement, Relationale Datenbanken, Nicht relationale Datenbanken, NoSQL, ACID, BASE, Transaktionen, Skalierbarkeit, Verfügbarkeit, Konsistenz, CAP-Theorem, Atomarität, Isolation, Partitionstoleranz, verteilte Systeme
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit bietet einen grundlegenden Überblick über die Charakteristika und Unterschiede von relationalen und nicht relationalen Datenbanken.
Was sind die zentralen Themenfelder der Arbeit?
Die Schwerpunkte liegen auf den Konsistenzmodellen ACID und BASE sowie dem Vergleich der Einsatzszenarien für relationale Datenbanken und NoSQL-Systeme.
Was ist das primäre Ziel der Untersuchung?
Ziel ist es, die Eignung der jeweiligen Datenbankmodelle hinsichtlich ihrer Skalierbarkeit und Flexibilität unter den Anforderungen moderner Web-Anwendungen zu analysieren.
Welche wissenschaftliche Methode wird verwendet?
Die Arbeit basiert auf einer theoretischen Analyse und dem Vergleich existierender Datenbankmodelle unter Einbeziehung relevanter Fachliteratur und theoretischer Theoreme.
Was wird im Hauptteil der Arbeit behandelt?
Der Hauptteil gliedert sich in die detaillierte Beschreibung der ACID-Eigenschaften, die Entstehungsgeschichte von NoSQL sowie die Diskussion der Kompromisse zwischen Konsistenz, Verfügbarkeit und Partitionstoleranz.
Welche Schlüsselwörter charakterisieren die Arbeit?
Die wichtigsten Schlagworte sind Datenbankmanagement, ACID, BASE, NoSQL, Skalierbarkeit, Konsistenz und CAP-Theorem.
Wie unterscheidet sich das ACID-Modell vom BASE-Modell?
Während ACID auf strikte Konsistenz und Sicherheit bei Transaktionen setzt, priorisiert das BASE-Modell Verfügbarkeit und Skalierbarkeit in verteilten Systemen, wobei temporäre Inkonsistenzen in Kauf genommen werden.
Welches Problem beschreibt das CAP-Theorem?
Das CAP-Theorem besagt, dass bei verteilten Systemen nur zwei der drei Eigenschaften Konsistenz (Consistency), Verfügbarkeit (Availability) und Partitionstoleranz (Partition Tolerance) gleichzeitig vollumfänglich garantiert werden können.
- Quote paper
- Anonym (Author), 2015, Vergleich relationaler und nicht relationaler Datenbanken, Munich, GRIN Verlag, https://www.hausarbeiten.de/document/418161