[英]Speed up Neo4j relationship creation
我有一個 CSV 文件,它有 100 萬行和 3 列(NODE_ID_1、PROPERTY_COLUMN、NODE_ID_2)。
我還有一個已經存在的 Neo4j 數據庫,其中包含節點label。 我應該在節點之間創建關系RELATED_TO 。 我使用下面的cypher查詢來創建節點之間的關系但是太麻煩了(完成rel創建需要一天多的時間)。 你有一些快速建立關系的技巧嗎?
CALL apoc.periodic.iterate(
"LOAD CSV WITH HEADERS FROM $url AS row
WITH row {.*, PROPERTY: toFloat(row.PROPERTY_COLUMN)}
RETURN row",
"MATCH (src:Node {node_id : row['NODE_ID_1']}), (dst:Node {node_id : row['NODE_ID_2']})
MERGE (src)-[r:RELATED_TO]-(dst)
SET r += {property_column: row['PROPERTY_COLUMN']}
",
{batchSize: 1000, batchMode: "BATCH", parallel:false, params: {url: 'file:///path_to_file'} })
你有一個索引:Node(node_id)嗎? 你需要這個才能讓你的 MATCH 操作高效。
https://neo4j.com/docs/cypher-manual/current/administration/indexes-for-search-performance/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.