Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
neo4j进口放缓_Neo4j_Cypher - Fatal编程技术网

neo4j进口放缓

neo4j进口放缓,neo4j,cypher,Neo4j,Cypher,我正在尝试使用cypher将大约500000个节点的中等数据集导入neo4j。我正在我的带SSD的3.4 GHz i7 iMac上本地运行neo4j-community-2.0.0-M05 我正在将密码传输到neo4j shell,将每40k行包装到一个事务中 我正在使用标签,在开始之前,我为每个标签节点的一个属性创建了索引 当我昨晚离开的时候,MATCH CREATE UNIQUE每次大约需要15毫秒。今天早上,他们大约用了6000毫秒 慢速查询看起来像这样 MATCH n:Artifact

我正在尝试使用cypher将大约500000个节点的中等数据集导入neo4j。我正在我的带SSD的3.4 GHz i7 iMac上本地运行neo4j-community-2.0.0-M05

我正在将密码传输到neo4j shell,将每40k行包装到一个事务中

我正在使用标签,在开始之前,我为每个标签节点的一个属性创建了索引

当我昨晚离开的时候,MATCH CREATE UNIQUE每次大约需要15毫秒。今天早上,他们大约用了6000毫秒

慢速查询看起来像这样

MATCH n:Artifact WHERE n.pathId = 'ZZZ' CREATE UNIQUE n-[r:DEPENDS_ON]->(a:Artifact {pathId: 'YYY'}) RETURN a
1 row
5719 ms
pathId已编制索引

我知道这是一个里程碑式的构建,可能没有优化性能。但我的进口量还不到三分之一,而且进口速度越来越慢


我是否应该使用cypher以外的其他方法导入此数据?

我只想回答我自己的问题,以防其他人发现此问题。感谢Peter建议批量导入项目。我用了这个

我的工作流程是:(1)将所有数据加载到关系数据库中,(2)清除重复数据,然后(3)编写脚本将数据导出到CSV文件中

使用cypher,我让导入运行了24小时,然后我将其终止。使用java导入工具,使用neo4j-community-2.0.0-M06进行整个导入需要11秒钟


一句话:不要费心写出密码来导入大块数据。如有必要,花一小时清理数据,然后导出到CSV并使用java批导入工具。

您是否尝试过使用带有参数的batchinserter,请参阅?我认为模式匹配可能没有得到优化。如果能够访问您的配置文件,那将是一件非常棒的事情。