Hi, I have a very expensive query that I'm trying to figure out how to optimise.
match (ea:nodeType1 {name:"something1"})<-[:maps_to*]-(eb:nodeType1) with distinct ea, eb match (eb) where eb.fullname starts with "something" return
ea.name,
eb.name;
I've used the profiler and as expected the expand all is the most expensive part of the operation
+Filter | 128 | 334812480 | 669618290 | |
+VarLengthExpand(All) | 128 | 669618290 | 1494585385 | | (ea)<-[:maps_to*]-(eb)
I've used the profiler and brought down the running time from 3 hours to 2,15. I then tried the enterprise version hoping that the query would use the available processors but it used only one so I'm assuming that cypher is not parallelizable.
Is there some quick win to speed up a distinct path query or do I have to write my own using the java api?
p.s: the query might not compile as I've tried to summarise the gist of the issue.