Я новичок в ArangoDB. После прочтения официального документа я знаю, что функция графика ArangoDB использует edge collection
для определения отношений между вершинами с атрибутами _from
и _to
, которые будут относиться к начальной и конечной вершинам. Индекс будет создан для этих двух атрибутов автоматически для быстрого доступа.
С этой структурой производительность обхода gragh будет сильно зависеть от эффективности индекса, определенного в атрибутах from_
и to_
, но это кажется, что одного индекса недостаточно для поддержки эффективного обхода gragh?
Я думал, что с учетом вершины, только небольшое подмножество вершин будет задействовано для обхода (например, обход связанного списка для данного узла ), но со структурой коллекции индексов и краев для выполнения запроса будет задействована вся коллекция краев (хотя индекс поможет избежать обхода всей таблицы от первого документа до конечного).
Также , при решении практической задачи с графом может быть много вершин для посещения, даже с помощью индекса, это также неизбежно вызовет плохую производительность.
Итак, я бы спросил со структурой коллекции ребер, как ArangoDB реализован для эффективного обхода графа