Глядя на документацию, он говорит, что модуль обхода (@arangodb/graph/traversal) устарел с версии 3.4.0. Есть ли другой способ использовать настраиваемых посетителей и расширителей так, как это было доступно в этом модуле?
Пользовательские посетители и пользовательские расширители в arangodb
Ответы (1)
Единственной альтернативой, которую я смог найти, были «определяемые пользователем функции»: https://www.arangodb.com/docs/stable/aql/extending.html.
После определения UDF, скажем, userFunc
, вы можете выполнить такой запрос:
FOR v, e, p in MIN..MAX
INBOUND|OUTBOUND|ANY @startingNode
GRAPH @graph //or edge list
[PRUNE]
[OPTIONS]
LET vProcessed = userFunc(v)
//... further clauses operate on vProcessed
Пользовательская функция, определенная таким образом, потенциально может посещать и узлы и ребра, что я не уверен, сможет ли клиентский драйвер.
Примечание. "Посетитель" может запускаться только после предложения PRUNE
из-за разрешенной схемы синтаксиса AQL.
person
adityamukho
schedule
09.10.2019