对百万nodes的属性进行更新,有什么可以加快时间的吗?我目前使用的batch进行update
发布于 7 年前 作者 zhengxin 2809 次浏览 来自 问答

每五万条需要800S,

3 回复

你可以使用 apoc 中的 iterate, 参考这个 apoc

call apoc.periodic.iterate(
"match (n:Person) return id(n) as nodeID",
"match (n) where id(n)=nodeID set n.nationality='Chinese'",
{batchSize:10000, parallel:true, iterateList:true} 
)

这样可以最大化并行度,服务器有多少核就可以多大并发,千万级数据在几分钟就做完了。

赞:@jiangxiluning! 有一点要知道的是,并行写入适合SSD硬盘,对物理硬盘不推荐使用。 另外,是否可以分享你使用的数据更新语句?通常使用LOAD CSV可以至少达到数万节点/秒,用IMPORT可以在百万节点/秒。

@jiangxiluning 用这个load csv是不是如果数据有重复会死锁?

回到顶部