首页 > 解决方案 > 为什么在 neo4j 中有这么多 db 命中?

问题描述

在此处输入图像描述 在此处输入图像描述 在我的例子中,总共有 1 个类别节点和 2 个模板节点。我在 [*] 中放了一个 * 以支持更多的场景。但是为什么当前数据在这个密码中有这么多数据库命中?

标签: neo4jcyphergraph-databases

解决方案


这可能是*您查询的关系部分正在执行此操作。

虽然您只有一个 Category 节点和两个 Template 节点,但您已经要求 Neo4j 跳过任意数量的关系以从一个到另一个,并且除了指定起始节点之外没有提供任何帮助来缩小搜索范围。

例如,如果您的 Category 连接到 100,000 个其他节点(任何标签,而不仅仅是 Template),您已经迫使 Neo4j 跳过其中的每一个节点,以查看是否有到 Template 节点的路径 - 以及这些节点是否有它们自己的连接,那么它们也都需要被探索,因为遍历的深度不受限制。

如果您知道如何以您感兴趣的方式连接 Category 和 Template 节点(例如,如果您只想遍历每组特定的关系),那么您将从根本上提高查询的性能。同样,减少路径的最大长度也会有所帮助。


推荐阅读