顶点对等共享完全相同邻域的 Gremlin 策略

Gremlin strategy to vertex peer sharing exactly the same neighbourhood

使用 AWS Neptune,我需要找到一种遍历策略,它采用一个参考顶点,并通过沿一种边类型遍历,找到具有完全相同邻居的另一个顶点,即。不多也不少

g.V('1').as('ref_vertex').out('created').as('creations').in('created')

查找也创建了与“1”相同的东西的顶点,但它也在顶点范围内 (a) 也创建了其他东西,以及 (b) 那些没有创建“1”创建的所有内容的顶点。

g.V('1').as('ref_vertex')
 .out('created').as('creations').in('created')
 .not(out('created').where(neq('creations'))

只对问题 (a) 有帮助,摆脱人创造了额外的东西。

我如何继续此查询以跳过结果中的 (b) 个顶点?

g.V('1').aggregate('ref_vertex').
    out('created').
    sideEffect(aggregate('neighbors')).     /* get neighbors of 'ref_vertex' */
    in('created').groupCount().unfold().    /* group count in('created') by its occurrence times */
    as('candidate_shared_neighbor_cnt_pair').
    where('candidate_shared_neighbor_cnt_pair', eq('neighbors')).       /* select only the vertices have the same occurrence times as 'ref_vertex' */
        by(select(values)).
        by(unfold().count()).
    select(keys).
    where(without('ref_vertex'))