The Gremlin Graph Traversal Machine and Language
Marko A. Rodriguez

TL;DR
This paper introduces Gremlin, a graph traversal machine and language that provides a flexible, mathematically grounded framework for graph querying across various computing systems, supporting both imperative and declarative styles.
Contribution
It offers a formal mathematical description of Gremlin, detailing its automaton and functional properties, and introduces the concept of a Universal Gremlin Machine for broad applicability.
Findings
Supports imperative and declarative querying
Enables host language agnosticism and extensible optimization
Allows hybrid depth- and breadth-first evaluation
Abstract
Gremlin is a graph traversal machine and language designed, developed, and distributed by the Apache TinkerPop project. Gremlin, as a graph traversal machine, is composed of three interacting components: a graph , a traversal , and a set of traversers . The traversers move about the graph according to the instructions specified in the traversal, where the result of the computation is the ultimate locations of all halted traversers. A Gremlin machine can be executed over any supporting graph computing system such as an OLTP graph database and/or an OLAP graph processor. Gremlin, as a graph traversal language, is a functional language implemented in the user's native programming language and is used to define the of a Gremlin machine. This article provides a mathematical description of Gremlin and details its automaton and functional properties. These properties enable…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
