arangodb是否提供了一个实用程序来列出给定边缘定义的集群?
E.g。鉴于图表:
Tyrion ----sibling---> Cercei ---sibling---> Jamie
Bran ---sibling--> Arya ---sibling--> Jon
我想要以下内容:
my_graph._getClusters({edge: "sibling"}) -> [ [Tyrion, Cercei, Jamie], [Bran, Arya, Jon] ]
答案 0 :(得分:1)
如果您有一个名为siblings
的图表,则以下查询将查找图表中所有通过类型sibling
的边连接并且(路径)长度为3的路径。应该与您提供的示例数据相匹配:
LET options = {
followEdges: [
{ type: 'sibling' }
]
}
FOR i IN GRAPH_TRAVERSAL('sibling', { }, "outbound", options)
FILTER LENGTH(i) == 3
RETURN i[*].vertex._key
省略或调整FILTER
也会在图表中找到更长或更短的路径。