Enzyklopädie > Artikel
NoSQL
NoSQL Datenbankmanagementsysteme sind alternative Systeme zu den etablierten relationalen Datenbankmanagementsystemen, d.h. Systeme, die kein relationales Datenmodell verwenden und damit in der Regel auch kein SQL Interface zur Verfügung stellen.
Derartige Systeme gibt es schon sehr lange, aber seit etwa 2009 wird der Begriff NoSQL verwendet, um diese rasch an Bedeutung gewinnenden Systeme zu charakterisieren. Der Hauptgrund für das neu aufflammende Interesse sind die immer weiter steigenden Anforderungen an Datenbanken, für die relationale Modelle nicht immer die ideale Lösung sind. Die neuen Anforderungen sind einerseits die enormen Datenmengen, wie sie etwa bei großen Web-Applikationen und auch bei anderen Big Data Szenarien entstehen, aber auch Verfügbarkeit und Fehlertoleranz.
Die NoSQL Bewegung versteht den Begriff häufig als "Not Only SQL", und will damit ausdrücken, dass relationale Datenbankmanagementsysteme sehr wohl bewährte Werkzeuge sind, lediglich nicht für alle Einsatzzwecke optimal.
Klassifizierung
Naturgemäß ist es schwierig Datenbankmanagementsysteme, die sich nur durch die Abwesenheit von Merkmalen definieren, zu klassifizieren. Die alternativen Lösungsansätze sind sehr unterschiedlich und bei jeder Klassifizierung findet man Systeme, die nicht oder nur schwer einzuordnen sind. Üblicherweise werden jedoch folgende Klassen unterschieden:
- Key-Value Stores
- Wide Column Stores
- Document Stores
- Graph DBMS
- RDF Stores
- Native XML DBMS
- Content Stores
- Suchmaschinen
Vorteile
Auf Grund der unterschiedlichen Klassen von NoSQL Systemen können keine für alle gültigen Vorteile genannt werden. Im Einzelnen handelt es sich aber immer um eine Kombination folgender Punkte:
- höhere Performanz
- einfachere Verteilung der Daten auf mehrere Knoten (z.B. Sharding), dadurch wird Skalierbarkeit und Fehlertoleranz erreicht
- höhere Flexibilität durch schemafreie Datenstrukturen
- einfachere Administration der Datenbanksysteme
Methoden
Diese Vorteile werden vor allem mit folgenden Mitteln erreicht, die aber auch jeweils Nachteile mit sich bringen:
- Alternative Ansätze zu normalisierten, relationalen Datenmodellen
- Aufgabe von einem oder mehreren der ACID Kriterien
- Weniger mächtige Datenabfragemechanismen
Weiterführende Informationen
Mehr Informationen finden Sie in den Artikel NoSQL - schöne neue Datenbankwelt oder vorübergehender Hype? (PDF) von solid IT.