CouchDB - angesagter Vertreter der "NoSQL"-Datenbanken

Seite 4: Fazit

Inhaltsverzeichnis

Sind NoSQL-Datenbanken im Allgemeinen und CouchDB im Speziellen nur eine Spielwiese für erklärte Gegner relationaler Datenbanken, oder steckt mehr hinter der neuen Generation von Datenbanken? Wer die Situation nicht ausschließlich durch die Brille eines Vertriebsbeauftragten einer relationalen Datenbank betrachtet, merkt schnell, dass tatsächlich eine attraktive Alternative entsteht.

Wenn auch die Bezeichnung NoSQL-Datenbanken zunächst etwas anderes vermuten lässt, sind CouchDB und die anderen NoSQL-Vertreter nicht angetreten, um die relationalen Datenbanken komplett zu verdrängen. Das wollen und können sie nicht. Stattdessen haben sowohl NoSQL- als auch relationale Datenbanken ihre Stärken, die sie bei passenden Projektanforderungen ausspielen können. Die erwähnte Schemafreiheit der NoSQL-Datenbanken lässt sie zwar flexibler für die Ablage von beliebigen Dokumenten sein. Die durch ein Datenbankschema vorgegebene exakte Struktur der Tabelleninhalte ermöglichen dagegen in der relationalen Welt zudem (Ad-hoc-)Abfragen auf ungewöhnlichen Spaltenkombinationen. Wer so etwas benötigt oder sich dafür Optionen offen halten will, bleibt in der relationalen Welt.

Relationale Datenbanken sind dafür gebaut, auf einem zentralen Server zu laufen. Im Zeitalter des Cloud Computing werden aber häufig viele kleinere Rechner zusammen verwendet, das heißt, die Verteilung von Anfragen gestaltet sich immer wichtiger. Relationale Datenbanken bieten dafür zwar Cluster-Lösungen, sind aber vom Grunddesign eben nicht dafür gebaut. Als Folge kommt man insbesondere in neueren Webanwendungen selbst mit relationalen Cluster-Lösungen an ihre Grenzen.

CouchDB bietet weniger Funktionen als Oracle, DB2, MySQL und die meisten anderen relationalen Systeme und ist daher wesentlich schlanker. Das erkennt man am Sourcecode-Umfang, der bei circa 13.000 Zeilen liegt. Zum Vergleich: Der MySQL-Sourcecode liegt oberhalb der Millionen-Grenze. Eine eierlegende Wollmilchsau ist CouchDB nicht und wird es auch nie werden. Wer das aber nicht sucht, sondern eine Speichertechnik für Dokumente, bei der sich die Flexibilität sowie die oben genannten Funktionen von CouchDB nutzen lassen, dem sei ein Blick auf CouchDB empfohlen. Ein Prototyp ist durch die mit der Schemafreiheit verbundene Flexibilität schnell erstellt.

Rudolf Jansen
arbeitet als freiberuflicher Software-Entwickler und Journalist in Aachen. Seine Tätigkeitsschwerpunkte liegen in den Bereichen Java, C++, XML und Datenbanken.

  • Frank Müller; Es geht auch einfach; Datenbanken ohne SQL und Relationen; in iX 2/2010, Seite 122-126