加快Neo4j关系的创建

2022-01-24 07:07:26 标签 databasegraphneo4jcyphernodes

我有一个有100万行和3列的CSV文件(NODE_ID_1 PROPERTY_COLUMN NODE_ID_2)。

我还有一个已经存在的包含Node标签的Neo4j数据库。我应该在节点之间创建关系RELATED_TO。我使用下面的cypher查询来创建节点之间的关系,但是它太麻烦了(完成rel的创建需要超过一天的时间)。你有一些快速生成这种关系的技巧吗?


         CALL apoc.periodic.iterate(
        "LOAD CSV WITH HEADERS FROM $url AS row 
         WITH row {.*, PROPERTY: toFloat(row.PROPERTY_COLUMN)}
         RETURN row",
        "MATCH (src:Node {node_id : row['NODE_ID_1']}), (dst:Node {node_id : row['NODE_ID_2']}) 
         MERGE (src)-[r:RELATED_TO]-(dst)
         SET r += {property_column: row['PROPERTY_COLUMN']}
        ",
        {batchSize: 1000, batchMode: "BATCH", parallel:false, params: {url: 'file:///path_to_file'} })

###你有一个索引:节点(node_id)?为了使您的MATCH操作更高效,您需要这样做。

https://neo4j。com/docs/cypher-manual/current/administration/indexes-for-search-performance/

阅读全文

▼ 版权说明

相关文章也很精彩
推荐内容
更多标签
相关热门
全站排行
随便看看

错说 cuoshuo.com —— 程序员的报错记录

部分内容根据CC版权协议转载;网站内容仅供参考,生产环境使用务必查阅官方文档

辽ICP备19011660号-5

×

扫码关注公众号:职场神器
发送: 1
获取永久解锁本站全部文章的验证码