Hey Guys,


So I'm working on a proof-of-concept that uses Neo4j as data store and I'm 
experiencing some performance issues with the

Node.getRelationships() method.



I've noticed that when trying to obtain neighbours for any node with very many 
relationships(over 100K) using the getRelationships()

function(or any of its overloaded forms), the delay is often several seconds 
long on a single call. The worst case I've seen is a

node with ~800K relationships where the call takes 25 seconds. Even for nodes 
with 10K-100K relationships, calling any form of

getRelationships() is noticeably slow.



One thing to note about this, is that I've only really observed such behaviour 
with our largest graph(~30M nodes, ~80M relationships).

Smaller graphs that I've tested can make the same call on nodes with 100K+ 
relationships in significantly less time.



I've also played around with the cache/memory mapped i/o settings in the neo4j 
configuration file, but haven't been able to improve

the performance. I'm also using a JVM heap size of 5GB.



It may be the case that I'm doing something horribly wrong in my 
implementation, or that the slowness is due to some limitation of

Neo4j on neighbour set size (doubtful, since I don't think performance should 
be THIS slow), but it would be great if someone could

help shed some light on this issue.



Thanks,



Ike Eshiokwu

_______________________________________________
Neo mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to