【发布时间】:2017-01-31 19:32:21
【问题描述】:
我正在尝试将包含节点 (+200000) 和它们之间的边的 CSV 导入 Neo4J。
1) 出于某种我找不到的原因,当文件大小超过 5000 行(左右)时,根本不会创建关系。
USING PERIODIC COMMIT 100
LOAD CSV WITH HEADERS FROM "file:///export_conceptos_50000.txt" AS csvLine
FIELDTERMINATOR '\t'
MERGE (c:Concepto {nom: csvLine.concepto1_sin, cat: csvLine.c1cat})
MERGE (d:Concepto {nom: csvLine.concepto2_sin, cat: csvLine.c2cat})
FOREACH(ignoreMe IN CASE WHEN csvLine.relacion='Is_a' THEN [1] ELSE [] END | MERGE (c)-[:Is_a]->(d) )
FOREACH(ignoreMe IN CASE WHEN csvLine.relacion='Finding_site' THEN [1] ELSE [] END | MERGE (c)-[:Finding_site]->(d) )
所以 this 是原始问题:没有创建边。
2) 作为替代方案,我尝试将文件拆分为较小的文件,然后通过 neo4j-shell(Neo4J Linux shell 实用程序)导入。
这是命令行:
./neo4j-shell -file /usr/share/neo4j/scripts/query.cypher -path /usr/share/neo4j/neo4j-community-3.1.1/data/databases/graph.db
这是输出:
ERROR (-v for expanded information):
Error starting org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory, /usr/share/neo4j/neo4j-community-3.1.1/data/databases/graph.db
我猜这是因为已经有一个 Neo4J 引擎在运行。
那么,我应该如何在命令行中指定目标数据库呢?
谢谢!
【问题讨论】:
标签: neo4j