You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by Hak B <ha...@gmail.com> on 2021/06/08 13:16:34 UTC

Group by implementation in gremlin

Hi everyone, I would like to understand how "groupcount" or more generally, the notion of "group by" in gremlin was implemented. The code base is quite huge so it's not easy for me. Any resources/help would be useful. Thank you !

Hakim.

Re: Group by implementation in gremlin

Posted by Stephen Mallette <sp...@gmail.com>.
All step implementations are implemented here:

https://github.com/apache/tinkerpop/tree/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step

group() and groupCount() are implemented in both a side-effect and map form:

https://github.com/apache/tinkerpop/blob/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroupCountSideEffectStep.java
https://github.com/apache/tinkerpop/blob/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroupSideEffectStep.java

https://github.com/apache/tinkerpop/blob/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupCountStep.java
https://github.com/apache/tinkerpop/blob/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupStep.java


On Tue, Jun 8, 2021 at 9:16 AM Hak B <ha...@gmail.com> wrote:

> Hi everyone, I would like to understand how "groupcount" or more
> generally, the notion of "group by" in gremlin was implemented. The code
> base is quite huge so it's not easy for me. Any resources/help would be
> useful. Thank you !
>
> Hakim.