我正在尝试加载具有两个节点(Autor,Paper)以及与导入工具的关系的图形,现在我有这两个文件,据我所知,它们必须是:
authors.csv: :作者(自动):广告(自动):PMID(纸张) 作者1血液科。 31207293
Papers.csv
:PMID(Paper):PaperName(Paper):AuthorList(Autor)
31207293一个巨大的论文名称Author1,Author2,
这些文件存储在/ 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,...">]
现在,我仅尝试加载Paper和Author节点,我可以通过以下方式在浏览器中完成
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 } )
但是这样做花费的时间很长。
答案 0 :(得分:0)
此警告可能不会影响您,但请参阅here了解更多信息。
如果您要导入大量数据,那么Cypher之所以要花费这么长时间是因为MERGE
。如果您知道authors.csv
包含每个作者的唯一条目,则您无需执行MERGE
,因为它永远不会与现有节点匹配。
尝试将MERGE
切换为CREATE
。它应该快得多。