我有一个csv文件,有3800000,0000行,每一行都有两个名字,意思是两个人互相认识:
name,friend
a,b
a,c
a,d
f,a
e,a
d,g我需要计算所有的人之间的关系。
首先,我使用密码:
CREATE (n:Patent {name:'a'})
CREATE (n:Patent {name:'b'})
CREATE (n:Patent {name:'c'})
CREATE (n:Patent {name:'d'})
CREATE (n:Patent {name:'e'})
CREATE (n:Patent {name:'f'})
CREATE (n:Patent {name:'g'})
MATCH (a:Patent {name:'a'}),
(b:Patent {name:'b'})
MERGE (a)-[:CITED]->(b)
MATCH (a:Patent {name:'a'}),
(b:Patent {name:'c'})
MERGE (a)-[:CITED]->(b)
MATCH (a:Patent {name:'a'}),
(b:Patent {name:'d'})
MERGE (a)-[:CITED]->(b)
MATCH (a:Patent {name:'f'}),
(b:Patent {name:'a'})
MERGE (a)-[:CITED]->(b)
MATCH (a:Patent {name:'e'}),
(b:Patent {name:'a'})
MERGE (a)-[:CITED]->(b)
MATCH (a:Patent {name:'d'}),
(b:Patent {name:'g'})
MERGE (a)-[:CITED]->(b)然后,我得到了结果:

但是行数太大,我尝试了load csv批处理导入命令:
:auto USING PERIODIC COMMIT 1000
LOAD CSV WITH HEADERS FROM "file:///friend_relation.csv" AS line
MATCH (a:Friend {name: line.name}),
(b:Friend {name: line.friend}) MERGE (a)-[:KNOWS]->(b)它失败了:

我把大文件分成多个样本文件,并使用csv load来实现我的目标,我的问题是什么?
发布于 2020-05-25 12:40:13
如果不返回任何内容,这是因为MATCH子句没有找到任何内容:
试着使用
:auto USING PERIODIC COMMIT 1000
LOAD CSV WITH HEADERS FROM "file:///friend_relation.csv" AS line
MERGE (a:Friend {name: line.name})
MERGE (b:Friend {name: line.friend})
MERGE (a)-[:KNOWS]->(b)https://stackoverflow.com/questions/61998359
复制相似问题