【问题标题】:Neo4j: Delete lots of nodes does not improve performanceNeo4j:删除大量节点不会提高性能
【发布时间】:2014-06-30 13:29:18
【问题描述】:

我有两个图:一个有 15k 个节点,另一个是有 30k 个节点的子图。为了接收较小的,我选择了较大的并删除了一些节点及其关系。现在我在两个图表上都做了一些性能问题,并且对两个图表都做了相同的查询,我想知道更大图表中的性能更好。我不知道原因。 Here 我发现删除的节点是为将来插入新节点时保留的,但这是真正的原因吗?我使用的是 2.1.2 版本。

【问题讨论】:

  • 在进行测量之前,您是否为这两个图预热了缓存? docs.neo4j.org/chunked/stable/configuration-caches.html 是一本好书。
  • 能否请您也粘贴您用于比较的示例查询?或整个比较过程
  • 我没有预热缓存,但在这两种情况下。这些图位于两个不同的数据库中,首先我使用小图进行测量,然后关闭数据库并加载其他数据库。查询旨在查找一个属性的 50 个随机值(两个图中的值相同,这可能是因为一个是另一个的子图)

标签: performance neo4j


【解决方案1】:

如果你一次性删除再插入,那么你删除的记录仍然没有被使用。

但是在你的小图大小这应该没关系,我认为你有一个不同的问题,请分享所有运行缓慢的代码/查询以及关于你的数据模型和图的更多信息。

【讨论】:

  • 我使用完整的 Cineasts 数据集(12k 电影,50k 演员)并将其减少一半,因为我想比较不同大小数据集的性能。查询类似于MATCH (n)-[r]-() WHERE n.name = "Julia Roberts" RETURN n, count(*);,但参与者名称不同。
猜你喜欢
  • 1970-01-01
  • 2018-11-04
  • 1970-01-01
  • 1970-01-01
  • 2021-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多