Hey guys,
I am experimenting with the community edition of neo47 using the browser application. We may move onto the enterprise one but there's a roadblock that I am seeing. Here's my problem:
I imported and creates 1.5 million+ nodes with 20 metadata properties using APOC. Now, I need to create relationships between approx 250k of these service nodes. I am using APOC to do that and the data is in python dictionary(json) format in the code. The queries are extremely slow, it took 4-5 hours just to get 20k relationships build out. Here's my query:
query = '''
CALL apoc.periodic.iterate("UNWIND $relationship_list as individual_service RETURN individual_service",
"MATCH (parent_service:Service_Asset_ID), (child_service:Service_Asset_ID) WHERE parent_service.id=individual_service.parent AND child_service.id=individual_service.child AND parent_service.source=child_service.source MERGE (parent_service)-[:SERVICED_BY]->(child_service) ",
{batchSize:1000, iterateList:true, parallel:true, params: {relationship_list:$relationship_list}})
'''
I have tried to follow up on some of the best practices but to no avail. I have also indexed the id and source fields. Any suggestions ?
Neo4j version: 4.1.3
I am using python driver
Thanks,
Ishan