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.

Reply via email to