尝试使用cypher为Neo4j中的大量节点设置属性时,我碰到了OutOfMemoryError
。
我使用的方法是这样的:
MATCH (n:MYLABEL) SET n.num_visits = 0 RETURN count(n)
当匹配的节点数在100,000s范围内时,此方法正常,但是当达到数百万个节点范围时,我在很长的延迟后遇到了OutOfMemoryError问题。 最好的方法是什么来解决此问题而又不会出现内存问题,并使操作相对快速地完成?
答案 0 :(得分:2)
尝试从APOC library
进行{{3}}的操作。例如:
CALL apoc.periodic.iterate (
"MATCH (n:MYLABEL) RETURN n",
"SET n.num_visits = 0",
{
batchSize: 100000,
parallel: true
}
)