In their new book, Neo4j In Action, Jonas Partner and Aleksa Vukotic perform a fascinating experiment. In theory, a graph database should be much faster than a relational databases in graph traversal. For example, in a social network, finding all the friends of a user’s friends. Even more so for friends of friends of friends. Aleksa and Jonas built this query in both MySQL and Neo4j with a database of 1,000,000 users and the results are striking. Execution Time is in seconds, for 1,000 users.
Depth Execution Time – MySQL Execution Time –Neo4j
2 0.016 0.010
3 30.267 0.168
4 1,543.505 1.359
5 Not Finished in 1 Hour 2.132
  For the simple friends of friends query, Neo4j is 60% faster than MySQL. For friends of friends of friends, Neo is 180 times faster. And for the depth four query, Neo4j is 1,135 times faster. And MySQL just chokes on the depth 5 query. The results are dramatic. Read about the whole experiment in the first chapter of Neo4j In Action.  

Keywords:  


Leave a Reply

Your email address will not be published.

1 Comment
Benchmarketing – Neo4j and MySQL | intertubes

[…] 4 levels, that’s faster than the Neo4j times given at https://neo4j.com/news/how-much-faster-is-a-graph-database-really/ .  For 5 levels, it’s slower, but nothing like the “not finished in an hour” listed.  In […]

sdmrnv

Obviously there are theoretical data in the post according remark “In theory, a graph database should be much faster than a relational databases in graph traversal”. On practics results are opposite. Oracle find 5,6,10,…25 deep friends for second and minutes, Neo4j has died after 6 step. Details here: http://homme.io/41721

1 Trackback