Difference between revisions of "Gremlin"
(→Links) |
|||
Line 1: | Line 1: | ||
− | Gremlin is the graph traversal language of [http://tinkerpop.apache.org/ 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. | + | [[File:Gremlin programming language.png|400px|left|link=https://tinkerpop.apache.org/gremlin.html]] Gremlin is the graph traversal language of [http://tinkerpop.apache.org/ 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. |
* https://tinkerpop.apache.org/gremlin.html | * https://tinkerpop.apache.org/gremlin.html | ||
Line 16: | Line 16: | ||
For example let's assume we want to Traverse the family tree of a person. | For example let's assume we want to Traverse the family tree of a person. | ||
− | + | = What links here = | |
+ | {{WhatLinksHere}} | ||
= Links = | = Links = | ||
* [https://docs.google.com/presentation/d/1JmwvKY7gS5Hcynw3yijeoSpqh-1zJCmdnSYs54whrDs/edit#slide=id.g24323db4b1_0_20 That Conf - Graph Database - What, Why, How - Presentation by Andrew Glassmann] | * [https://docs.google.com/presentation/d/1JmwvKY7gS5Hcynw3yijeoSpqh-1zJCmdnSYs54whrDs/edit#slide=id.g24323db4b1_0_20 That Conf - Graph Database - What, Why, How - Presentation by Andrew Glassmann] |
Revision as of 06:56, 18 February 2019
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 generic Start class, and E is a generic End class as explained in the Apache Tinkerpop documentation.
For example let's assume we want to Traverse the family tree of a person.
What links here
Links
- That Conf - Graph Database - What, Why, How - Presentation by Andrew Glassmann
- Practical Gremlin: An Apache TinkerPop Tutorial by Kelvin Lawrence see also https://github.com/krlawrence/graph
- https://github.com/bechbd/gremlin-ide
- Tinkerpop
Stackoverflow Questions
Recipes
Practical Gremlin: An Apache TinkerPop Tutorial by Kelvin Lawrence