Я партия загрузки Neo4j графа, используя py2neo с помощью этого скрипта:Пакетная загрузка Neo4j
batch = neo4j.WriteBatch(graph)
counter = 0
for each in ans:
n1 = graph.merge_one("Page", "url", each[0])
# batch.create(n1)
counter +=1
for linkvalue in each[6]:
try:
text,link = linkvalue.split('!__!')
n2 = graph.merge_one("Page", "url", link)
# batch.create(n2)
counter+=1
rel = Relationship(n1,'LINKS',n2, anchor_text=text)
batch.create(rel)
except (KeyboardInterrupt, SystemExit):
print 'fail'
raise
if counter > 900:
counter = 0
batch.submit()
print 'submit'
batch = neo4j.WriteBatch(graph)
merge_one ОБА сделать вызов на графике, который я считаю, замедляет мой алгоритм. Я прокомментировал batch.create(), потому что они воссоздавали узлы. Есть ли способ сделать эту функцию, но сохранить ее до тех пор, пока я не batch.submit() не ускорит процесс?
Я обрабатываю около 50 000 узлов и 1 000 000 отношений.