0

我正在尝试使用 python 创建节点和与数据库的关系,但这需要太多时间。我使用官方的 neo4j-driver 库并通过 Bolt 协议连接到数据库。

from neo4j import GraphDatabase

driver = GraphDatabase.driver('bolt://localhost:7687', auth=(user, pass))

我编写程序来创建大约 13,000 个节点和 642,000 个关系,大约需要 12 个小时。

session = driver.session()
def createNode(props):
    Label = 'SINGLE_NODE'
    return session.run("CREATE (a:"+Label+" {props}) "
                       "RETURN id(a)",  {'props':props}).single().value()

def createRelation(n1,n2,props):
    Label = 'SINGLE_NODE'
    return session.run("MATCH (a:"+Label+"),(b:"+Label+") 
                        WHERE id(a) = {n1} AND id(b) = {n2} "
                       "CREATE (a)-[rel:IS_CONNECTED {props}]->(b) 
    RETURN rel",  {'n1':n1,'n2':n2,'props':props}).single().value()  

在我使用 neo4j-driver 之前,我曾经使用 py2neo,但它比 neo4j-driver 慢一点。那么有什么建议可以加快程序处理速度。谢谢你

4

0 回答 0