1. 程式人生 > 其它 >Neo4j如何大批量刪除節點而不記憶體溢位

Neo4j如何大批量刪除節點而不記憶體溢位

技術標籤:資料庫筆記資料庫neo4j

今天更新圖資料庫,需要刪除七百多萬個關係,一開始簡單粗暴的MATCH ()-[r:relation]-() DELETE r;果不其然,記憶體炸了,所以選擇一部分一部分地刪,在使用LIMIT時又碰到一些bug,最終Cypher程式碼如下:

MATCH ()-[r:relation]-() 
WITH r 
LIMIT 1000000 
DELETE r 
RETURN count(*);

這裡的with和return都不能少,少了就報錯。
另外看到一篇部落格,講的用批處理,我沒試,先貼這兒
Neo4j中使用Cypher進行大批量節點刪除的優化