Hi Nick, GRAPH_NEIGHBORS were implemented in js, and thus not faster. With ArangoDB 3.0 you can use new facilities of the traverser, have a look at:
https://docs.arangodb.com/3.0.0r1/AQL/Graphs/ShortestPath.html This should resolve your performance issues. Cheers, Willi On Saturday, May 7, 2016 at 1:40:24 AM UTC+2, Nick Wolf wrote: > > Hi Wilfried, > > Thanks for the reply. FOR..OUTBOUND is extremely slow when we had to find > neighbors with higher depths. How about an array? Is it possible to use it > as follows.. > > FOR e IN GRAPH_NEIGHBORS(" > ........> +"'routeplanner', {}, {edgeExamples : [{distance: 600}, {distance: > 700}, {route[0] : 1}]}) RETURN e" > ........> ).toArray(); > > > On Wednesday, 4 May 2016 04:47:13 UTC-7, Wilfried Gösgens wrote: >> >> Hi Nick, >> edgeExamples only support direct matches. >> >> More versatile filter criterias are available in the pattern matching >> traversals. >> >> They're documented here: >> https://docs.arangodb.com/2.8/Aql/GraphTraversals.html >> >> We have a nice example available howto work with the pattern matching on >> the routeplanner graph: >> >> https://docs.arangodb.com/2.8/AqlExamples/CombiningGraphTraversals.html >> >> You may i.e. want to filter on the distance attribute of the edges: >> >> FOR v, e, p IN 1..1 OUTBOUND 'germanCity/Hamburg' >> GRAPH 'routeplanner' >> FILTER e.distance > 900 >> RETURN {traversedCity: v}` >> >> you could of course use arbirtrary functions in these FILTER expressions. >> >> Cheers, >> Willi >> >> On Wednesday, May 4, 2016 at 12:04:44 AM UTC+2, Nick Wolf wrote: >>> >>> Hello folks, >>> >>> How to use advanced conditions other than "equal to" inside edgeExamples >>> filter? >>> >>> FOR e IN GRAPH_NEIGHBORS(" >>> ........> +"'routeplanner', {}, {edgeExamples : [{distance: 600}, >>> {distance: 700}, {route.indexOf('ABC') < 0}]}) RETURN e" >>> ........> ).toArray(); >>> >>> >>> >>> >>> -- You received this message because you are subscribed to the Google Groups "ArangoDB" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
