对百万nodes的属性进行更新,有什么可以加快时间的吗?我目前使用的batch进行update
每五万条需要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可以在百万节点/秒。