Graphendatenbank

Graphendatenbanken spezialisieren sich auf vernetzte Informationen und eine möglichst einfache und effiziente Traversierung, die sich mit relationalen Datenbanken nur sehr mühselig abbilden lassen. Es existieren viele Anwendungen, die sich auf Graphen zurückführen lassen:

  • Hyperlink-Struktur des WWW
  • Bedeutung von Seiten für Suchmaschinen (PageRank)
  • "Wer kennt wen"-Beziehungen in sozialen Netzen (kürzeste Wege im Graph)
  • Fahr-/Flugplanoptimierung (maximaler Fluss)
  • Geoinformations- und Verkehrsleitsysteme (kürzeste Wege)
  • usw.

Durch einfache Traversierungen können teure Datenbankabfragen wie mehrere rekursiv verschachtelte Joins vermieden werden. Sie bieten hier eine bessere Performance als relationale Modelle.

Das zugrundeliegende Modell eines Graphensystems ist das Graphenmodell, welches sich in verschiedene Arten unterteilen lässt. Einige Anbieter von Graph-Datenbanken bieten unterschiedliche Modelle. Hier muss nach Art der Anwendung entschieden werden, welches zugrundeliegende Modell sinnvoll ist.

Wird die Anzahl der Knoten und Kanten im Graphen für einen einzelnen Server zu groß, muss der Graph partitioniert werden (siehe Partitionierung). Hier muss entschieden werden, wie der Graph sinnvoll in Teilgraphen getrennt werden kann, was sich nicht immer als einfach gestaltet. Es existieren allerdings einige Ansätze, um dieser Anforderung gerecht zu werden. Für Graphen mit viel Lese- und relativ wenig Schreiblast bietet sich eine Replikation? des Graphen an.

Anbieter

Neben einigen Open-Source-Projekten und kommerziellen Anbietern, existieren einige Graph-Datenbanken, die sich auf speziellere Anwendungsarten spezialisiert haben, um ganz spezifische Probleme zu lösen. Hierbei handelt sich es sich oft um Internetgrößen wie Twitter oder Google, die für ihre spezielle Art der Anwendung eigene Systeme realisiert haben.

Hier eine Übersicht von Anbietern für Graph-Datenbanken:

Siehe auch:

Quellen:

  • Edlich, Friedland, Hampe, Brauer: "NoSQL – Einstieg in die Welt der nichtrelationalen Web2.0- Anwendungen", Hanser-Verlag, 2010, ISBN 978-3-446-42355-8

Kategorie: Neue DB-Entwicklungen, NoSQL, Graphen-DB, G,