Difference between revisions of "Gremlin"

From BITPlan Wiki
Jump to navigation Jump to search
Line 15: Line 15:
 
S is a generic Start class, and E is a generic End class as explained in the [http://tinkerpop.apache.org/docs/current/reference/#_the_traverser Apache Tinkerpop documentation].
 
S is a generic Start class, and E is a generic End class as explained in the [http://tinkerpop.apache.org/docs/current/reference/#_the_traverser Apache Tinkerpop documentation].
  
A graph Traversal is the starting point for working with a graph.
+
A graph Traversal is the starting point for working with a graph. The convention is to name it
 +
<source lang='java'>
 +
g
 +
</source>
 +
or
 +
<source lang='java'>
 +
g()
 +
</source>
 +
 
 
== The Modern example ==
 
== The Modern example ==
 
http://tinkerpop.apache.org/docs/3.4.1/images/tinkerpop-modern.png
 
http://tinkerpop.apache.org/docs/3.4.1/images/tinkerpop-modern.png

Revision as of 09:02, 24 April 2019

Gremlin programming language.png

Gremlin is the graph traversal language of Apache TinkerPop. Gremlin is a functional, data-flow language that enables users to succinctly express complex traversals on (or queries of) their application's property graph. Every Gremlin traversal is composed of a sequence of (potentially nested) steps. A step performs an atomic operation on the data stream. Every step is either a map-step (transforming the objects in the stream), a filter-step (removing objects from the stream), or a sideEffect-step (computing statistics about the stream). The Gremlin step library extends on these 3-fundamental operations to provide users a rich collection of steps that they can compose in order to ask any conceivable question they may have of their data for Gremlin is Turing Complete.

GraphTraversal

One of the core concepts of tinkerpop/gremlin is the GraphTraversal It's interface has a generic definition as:

public interface GraphTraversal<S,E> extends Traversal<S,E>

and at https://markorodriguez.com/ the Author Marko Rodriguez explains the ideas behind using an generic approach vor handling Graphs. The Java implementation is available on github.

S is a generic Start class, and E is a generic End class as explained in the Apache Tinkerpop documentation.

A graph Traversal is the starting point for working with a graph. The convention is to name it

g

or

g()

The Modern example

tinkerpop-modern.png

Steps

step-types.png

General Steps

What links here

Links

Stackoverflow Questions

Recipes

Practical Gremlin: An Apache TinkerPop Tutorial by Kelvin Lawrence

load PDF