标签计数通常是错误的

时间:2017-02-21 16:15:06

标签: neo4j

我经常使用批量导入程序(neo4j-import)构建和删除整个数据集,但我经常发现标签上的缓存计数是错误的。例如,MATCH (n:Label) RETURN COUNT(n)会返回560,但MATCH (n:Label) WHERE EXISTS(n.attribute_all_nodes_have) RETURN COUNT(n)会返回> 750,000(这是正确的数字)。

这特别成问题,因为它使某些查询非常慢。例如,MATCH (a:Label1)-[r]-(b:Label2) WITH r LIMIT 5 DELETE r花了14秒。

删除和重建数据集有时会修复此问题,但这需要很长时间(数百万个节点)。有没有办法确定标签计数?

仅供参考我在MacOS Sierra 10.12.3上使用Neo4j 3.1.0。

1 个答案:

答案 0 :(得分:1)

导入后的计数应该是正确的,但是如果它们不存在则总是可以关闭数据库,删除计数存储neostore.counts.db.*并重新开始。计算将重建,但使用导入工具用于构建计数的相同功能。