查询任意两个节点之间的路径时如何避免笛卡尔积?

时间:2016-08-09 09:37:51

标签: performance neo4j cypher cartesian

我的图表中有两个类型的节点。 70k文章,10k DOCTOR和节点之间的20K关系。我想查询图中的所有最短路径,然后过滤最长的2路径。但是在查询计划中有笛卡尔积,性能太低......我的密码查询如下:

Match p = shortestPath( (a:DOCTOR)-[n:IS_AUTHOR*1..]-(b:DOCTOR) )
with a,b,p,length(p) AS length
order by length(p) DESC limit 3
RETURN nodes(p)

使用全局图形查询时,我可以做些什么来调整性能?这是我的查询计划:query plan

0 个答案:

没有答案