为什么我在 neo4j 中的查询路径中有相同的节点?
Why there are same node in path in my query in neo4j?
有这样的密码sql:
match p=(:Devices{name:"123.123.123.123"})-[r:Cost*..6]->(:Devices{name:"123.123.123.124"}) with p return p;
那么就是return:
{u'p': (123.123.123.123)-[:Cost {Cost: 21}]->(123.123.123.120)-[:Cost {Cost: 92}]->(123.123.123.110)-[:Cost {Cost: 82}]->(123.123.123.119)-[:Cost {Cost: 91}]->(123.123.123.123)-[:Cost {Cost: 56}]->(123.123.123.130)-[:Cost {Cost: 24}]->(123.123.123.124)}
我的路径中有一个环以及如何避免这种情况。
终于知道为什么我的查询如此解决和查询了
10 深度以下的路径将花费大约 1000s-2500s。
这是我的配置:
dbms.memory.heap.initial_size=4096m
dbms.memory.heap.max_size=9192m
dbms.memory.pagecache.size=10g
dbms.threads.worker_count=16
也许您的意思是指定 1 到 6 跳之间的路径,而不是恰好 6 跳:
match p=(:Devices{name:"123.123.123.123"})-[r:Cost*1..6]->
(:Devices{name:"123.123.123.124"}) with p return p;
有这样的密码sql:
match p=(:Devices{name:"123.123.123.123"})-[r:Cost*..6]->(:Devices{name:"123.123.123.124"}) with p return p;
那么就是return:
{u'p': (123.123.123.123)-[:Cost {Cost: 21}]->(123.123.123.120)-[:Cost {Cost: 92}]->(123.123.123.110)-[:Cost {Cost: 82}]->(123.123.123.119)-[:Cost {Cost: 91}]->(123.123.123.123)-[:Cost {Cost: 56}]->(123.123.123.130)-[:Cost {Cost: 24}]->(123.123.123.124)}
我的路径中有一个环以及如何避免这种情况。
终于知道为什么我的查询如此解决和查询了 10 深度以下的路径将花费大约 1000s-2500s。
这是我的配置:
dbms.memory.heap.initial_size=4096m
dbms.memory.heap.max_size=9192m
dbms.memory.pagecache.size=10g
dbms.threads.worker_count=16
也许您的意思是指定 1 到 6 跳之间的路径,而不是恰好 6 跳:
match p=(:Devices{name:"123.123.123.123"})-[r:Cost*1..6]->
(:Devices{name:"123.123.123.124"}) with p return p;