我正在尝试加载一个具有两个节点(Autor,Paper(和与导入工具的关系的图形,现在我有两个文件,据我了解,它们必须是:
作者.csv::作者(作者( :描述(作者( :P MID(论文(作者1血液科。 31207293
论文.csv:P MID(论文( :P作者列表(论文(
31207293 一个巨大的论文名称 作者1,作者2,
这些文件存储在/var/lib/neo4j/import 中
考虑到这一点,我运行以下代码
sudo neo4j-admin import --database=graph.db --id-type=STRING --mode=csv --delimiter=" " --nodes :Autor:Paper="authors.csv,Papers.csv"
但我得到了
WARNING: Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4j manual.
Expected '--nodes' to have at least 1 valid item, but had 0 []
usage: neo4j-admin import [--mode=csv] [--database=<name>]
[--additional-config=<config-file-path>]
[--report-file=<filename>]
[--nodes[:Label1:Label2]=<"file1,file2,...">]
[--relationships[:RELATIONSHIP_TYPE]=<"file1,file2,...">]
现在,我只尝试加载节点论文和作者,我可以通过以下方式在浏览器中执行此操作
USING PERIODIC COMMIT 500
LOAD CSV WITH HEADERS FROM "file:///authors.csv" AS row
MERGE ( c:Autor{ Name:row.Autor , Adscription: row.Adscription, PMID=row.PMID } )
但这样做所花费的时间很长。
此警告可能不会影响您,但有关详细信息,请参阅此处。
如果您要导入大量数据,则密码花费如此长时间的原因是因为 MERGE
.如果您知道authors.csv
包含每个作者的唯一条目,则无需执行MERGE
,因为它永远不会与现有节点匹配。
尝试将MERGE
切换到 CREATE
。它应该快得多。