关于本地星图的 Gremlin OLAP 遍历查询错误

问题描述

我正在尝试对需要检查顶点是否具有某种类型的邻居的查询执行 OLAP 遍历。 我不断得到

本地遍历可能不会遍历 GraphComputer 上的本地星图

我的查询类似于:

g.V().hasLabel('label1').
where(_.out().hasLable('label2'))

我正在使用 TraversalVertexProgram。 不用说,在 oltp 模式下运行相同的查询时没有问题 有没有办法执行这样的逻辑?

解决方法

这是 TinkerPop OLAP GraphComputer 的限制。它对“星图”对象进行操作。仅顶点和连接边。它内部使用消息传递引擎。所以你必须重写你的查询。

选项 1:从 label2 开始,到 label1。这应该返回相同的结果

g.V().hasLabel('label2').in().hasLabel('label1')

选项 2:尝试使用唯一的边标签并改为检查边标签

g.V().hasLabel('label1').where(_.outE('label1_label2'))