Hinter dem Begriff NoSQL verbirgt sich eine Vielzahl von nicht-relationalen Datenspeichern, denen gemeinhin Eigenschaften wie gute Skalierbarkeit, hohe Performance und eine einfache API zugeschrieben werden. Schaut man aber genauer hin, unterscheiden sich die einzelnen Vertreter deutlich und sind oftmals nur schwer miteinander vergleichbar, weil sie u.U. komplett unterschiedliche Konzepte verfolgen. Vom einfachen, hoch skalierbaren Key/Value-Speicher bis zur mächtigen Graphendatenbank reicht dabei das Feld. Hier einen Überblick zu bekommen und auch zu behalten, ist nicht leicht.
Vergleiche der Kandidaten helfen dabei. Derer gibt es viele, zumeist sind sie jedoch entweder recht allgemein gehalten oder beleuchten nur Teilaspekte. Hier eine Liste der interessanteren Vergleiche:
- High Performance Scalable Data Stores von Rick Cattell, stellt Vertreter von Key-value Stores, Document Stores, Extensible Record Stores und Scalable Relational Databases vor und zeigt deren Eigenschaften, Spezialitäten und typische Anwendungsfälle
- Anti-RDBMS: A list of distributed key-value stores von Richard Jones, vergleicht hauptsächlich Key-value Stores miteinander
- Quick Reference to Alternative data storages von Alex Popescu, gibt einen schnellen Überblick technischer Aspekte wie das zugrunde liegende Datenmodell, das Persistenzmodell oder das Client Protokoll. Leider ist der Performancevergleich verschwindend klein.
- NoSQL Ecosystem von Jonathan Ellis, betrachtet die Skalierbarkeit, das Daten- und Query-Modell und das Persistenzmodell einiger Kondidaten
- Key Value Stores: a practical overview von Marc Seeger, vergleicht die Ruby-Interfaces von CouchDB, Tokyo Cabinet, Cassandra und Redis
Aber Achtung: Der Bereich der nicht-relationalen Datenspeicher ändert sich sehr schnell und so sind Vergleiche oftmals schon kurz nach ihrem Erscheinen nicht mehr aktuell. Dennoch geben sie einen guten Anhaltspunkt, eine grobe Orientierung und ein Blick in die Kommentare lohnt fast immer.

