2

私はNeo4j1.9m05を使用しています。ノードのすべてのペア間の最短経路を計算したい。現在、この Cypher クエリを使用しています。

START a=node(1), b=node(1-1000) MATCH p=shortestPath(a-[:cooperate*..50]-b) RETURN length(p)

1-1000 は、1000 ノードがあることを意味します。この単純なクエリは 2 分以上かかり、遅すぎます。最短パス長の 1000 ペアを照会したいだけです。誰でも助けることができますか?

4

1 に答える 1

1

試してみること

コールド キャッシュでクエリを実行しましたか? 確認のため、2 回実行してみてください。

十分なメモリがあるかどうかを確認します。最短パス クエリは、グラフの関連部分がキャッシュに収まらない場合、大規模なヒットになります。

無向パスを探していることに気付きました。可能であれば、方向を指定することでアルゴリズムを助けることができます。

于 2013-04-12T06:44:18.470 に答える