从CSV文件导入关系时失败
我正在测试Neo4j 2.3.2,导入文件时遇到问题 首先,我提供有关数据的信息。我有人在公司工作,每个人至少有一个职位(少数人有两个职位)。在我们的逻辑中,职务是分类的,每个职务都有一个代码,但是相同的代码可能在不同的类别中(称为环境) 目前,我在DB有55万人,15个环境和30个职位 我有一个CSV文件,可以链接每个人的职位(在其环境中)。此文件的记录数与数据库中的人员数相同。因此,我在Web GUI中启动此密码查询:从CSV文件导入关系时失败,csv,neo4j,cypher,Csv,Neo4j,Cypher,我正在测试Neo4j 2.3.2,导入文件时遇到问题 首先,我提供有关数据的信息。我有人在公司工作,每个人至少有一个职位(少数人有两个职位)。在我们的逻辑中,职务是分类的,每个职务都有一个代码,但是相同的代码可能在不同的类别中(称为环境) 目前,我在DB有55万人,15个环境和30个职位 我有一个CSV文件,可以链接每个人的职位(在其环境中)。此文件的记录数与数据库中的人员数相同。因此,我在Web GUI中启动此密码查询: using periodic commit load csv with
using periodic commit
load csv with headers from "file:///C:\\...\\individu.csv" as row
match (c:Contact {individuId: row.NUM_INDIVIDU}), (f:Fonction {rank: row.NUM_FONC})-[:DEPEND]->(e:Environnement {rank: row.NUM_ENV})
merge (c)-[:POSTE]->(f);
我得到了这个错误:
超出GC开销限制
我的数据大小不是很重要,所以我不明白导入失败的原因
使用这种关系会是一个糟糕的建模想法吗?我应该将这些数据保存为属性吗?大约50万或60万的邮政关系太多了吗
编辑
我想我发现了问题所在。我有30万人有相同的头衔。与一个节点的关系是否过多?看起来您的导入语句使用了一个急切管道,这会导致定期提交无法按预期工作。因此,导入在单个事务中运行,这需要太多内存,因此会导致GC问题 关于急切的管道问题,有很多信息