名前付きパスを使用しない (必須でない限り) - Amazon Neptune

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

名前付きパスを使用しない (必須でない限り)

クエリ内の名前付きパスには、常に追加料金がかかります。これにより、レイテンシーとメモリ使用量の増加という面でペナルティが課される可能性があります。次のクエリについて考えます。

MATCH p = (n)-[:commentedOn]->(m) WITH p, m, n, n.score + m.score as total WHERE total > 100 MATCH (m)-[:commentedON]->(o) WITH p, m, n, distinct(o) as o1 RETURN p, m.name, n.name, o1.name

上記のクエリでは、ノードのプロパティのみを知りたいと仮定すると、パス「p」を使用する必要はありません。名前付きパスを変数として指定することで、 を使用した集約オペレーションDISTINCTは時間とメモリ使用量の両方の点でコストがかかります。上記のクエリのより最適化されたバージョンは次のとおりです。

MATCH (n)-[:commentedOn]->(m) WITH m, n, n.score + m.score as total WHERE total > 100 MATCH (m)-[:commentedON]->(o) WITH m, n, distinct(o) as o1 RETURN m.name, n.name, o1.name