Database Reference
In-Depth Information
Wie andere von uns untersuchte Consolen bietet Gremlin Zugriff auf die
Sprach-Infrastruktur, auf der sie basiert. Das bedeutet, dass Sie Groovy-
Konstrukte und Java-Bibliotheken in Gremlin nutzen können. Wir haben
das als natürlichere Form der Interaktion mit Graphen empfunden als Neo4js
nativen Java-Code. Und noch besser: Die Gremlin Console ist auch im Web-
Admin verfügbar. Klicken Sie einfach oben den Console-Link an und wählen
Sie Gremlin.
Per Konvention ist
g
eine Variable, die ein Graph-Objekt repräsentiert. Graph-
Actions
(also Aktionen) sind Funktionen, die wir auf das Objekt anwenden.
Da Gremlin eine Allzwecksprache zur Graph-Traversierung ist, nutzt sie all-
gemeine mathematische Graphen-Begriffe. Wenn Neo4j einen Graph-Daten-
punkt als
Knoten
bezeichnet, zieht Gremlin den Begriff
Vertex
vor und an-
stelle einer
Beziehung
spricht Gremlin von einer
Kante
(edge).
Um auf alle Knoten in diesem Graphen zuzugreifen, gibt es eine Property
namens
V
für „vertices“
gremlin> g.V
==>v[0]
==>v[1]
==>v[2]
sowie einer verwandten Property namens
E
("edges") für die Kanten.
gremlin> g.E
==> e[0][1-reported
_
on->0]
==> e[1][0-grape
_
type->2]
Sie greifen auf einen bestimmten Knoten zu, indem Sie die Knotennummer
an die
v
-Methode (kleines v) übergeben.
gremlin> g.v(0)
==> v[0]
Um sicher zu sein, dass Sie den richtigen Knoten haben, können Sie sich
seine Properties über die
map
-Methode ansehen. Beachten Sie, dass Sie bei
Groovy/Gremlin Methodenaufrufe verketten können.
gremlin> g.v(0).map()
==> name=Prancing Wolf Ice Wine 2007
Mit
v(0)
können wir zwar den exakten Knoten abrufen, aber wir können auch
alle Knoten nach einem gewünschten Wert filtern. Um zum Beispiel
riesling
überdenNamenabzurufen,könnenwirdieFiltersyntax{...}nutzen,diebei