查询顶点之间的边的索引

时间:2018-10-10 08:33:24

标签: graph-databases janusgraph

我正在尝试检查v1和v2之间是否存在边缘。

g.V(v1).outE(label).as(“ e”)。inV()。hasId(v2).select(“ e”)

由于图形上的边太多,因此获取结果的速度越来越慢。

我添加了一些索引,但没有帮助。什么是合适的索引才能更快地运行该查询?

1 个答案:

答案 0 :(得分:3)

正如在另一个问题上所讨论的那样,您可能无法按原样使此过程更快。您将需要在outE()周围使用索引(以及这些索引上的过滤器),以减少遍历的边数,从而限制inV()上的过滤器数量。

如果除了边缘标签之外没有其他要过滤的内容,则可以考虑对位进行归一化并将一些标识值从顶点推到边缘并对其进行索引。然后,遍历它应该更快得多,因为就是这样:

g.V(v1).outE().has('someId',v2)
相关问题