Open Source im professionellen Einsatz

Polyglott mit Cypher und Gremlin

Während bei relationalen Datenbanken SQL als Standard-Abfragesprache etabliert ist, verwendet so gut wie jede Graphdatenbank ihre ganz eigene Graph Query Language – die natürlich nicht zu den anderen kompatibel ist. Die Sprachen sind zudem meist noch auf bestimmte Anwendungsgebiete zugeschnitten. So erkennt etwa Cypher von Neo4j besonders gut Muster, während GQL aus Sones Graph DB den Fokus auf die Traversierung legt.

Mit der eigens für Graphendatenbanken zugeschnittenen Sprache Gremlin gibt es zudem so etwas wie einen Standardisierungsversuch [1]. Sie hat sich auf die Traversierung spezialisiert, kommt aber bei den freien Graphdatenbanken nur in Neo4j zum Einsatz. Durchgesetzt hat sich bei fast allen Graphdatenbanken lediglich eine REST-Schnittstelle (Representational State Transfer, [2]), mit der Clients die Datenbank über spezielle HTTP-Anfragen manipulieren.

REST und Json tragen die Daten übers Netz

In der Regel wandern dabei die Daten nach dem Json-Standard übers Netz, häufig ist es auch erlaubt, sie in einem XML-Dokument zu verpacken. Natürlich bieten die Datenbanken auch Schnittstellen zu einer oder mehreren Programmiersprachen, Anwendungsentwickler müssen nur eine mitgelieferte (Client-)Bibliothek hinzulinken und greifen dann bequem über die darin mitgebrachten Funktionen und Objekte in der ihnen gewohnten Programmiersprache auf den eigentlichen Datenbestand zu.

Bis auf die kostenlose Fassung von Sones Graph DB fassen die Graphdatenbanken mehrere einzelne Aktionen zu einer Transaktion zusammen, wie Neo4j erfüllen sie dabei teilweise sogar das ACID-Prinzip (Atomicity, Consistency, Isolation and Durability, [3]).

Um auf Anfragen möglichst schnell eine Antwort liefern zu können, indizieren Graphdatenbanken ähnlich wie ihre relationalen Kollegen den Datenbestand. In der Regel muss der Admin den Datenbanken zunächst mitteilen, welche Daten zu indizieren sich überhaupt lohnt. Bei einigen Datenbanken ist der Index selbst wieder ein Graph, viele freie Datenbanken nutzen aber herkömmliche Speichermethoden, besonders beliebt sind Key-Value-Stores (wie die Berkeley DB).

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 8 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook