Я ищу руководство по реализации алгоритма маршрутизации, такого как Dijkstra или A * на Azure Cosmos DB с использованием GREMLIN (Graph API) и C# NET Core 3.x.
Я могу выполнять основные функции CRUD на узлах и ребрах после использования примеров приложений, предоставляемых Microsoft, но я не уверен, что версия GREMLIN, которую использует Microsoft, поддерживает алгоритмы маршрутизации и как вообще начать, поскольку существует серьезная нехватка четкой документации
Ниже приведено одно из близких решений, которое я видел ниже, но я не уверен, поддерживает ли это Cosmos DB.
gV (). has ('person', ' название», 'Marko'). shortestPath (). с (ShortestPath.target, __. has ('name', 'jo sh')). with (ShortestPath.includeEdges, true)
g.inject (g.withComputer (). V (). shorttestPath (). with (ShortestPath.distance, 'weight'). with (ShortestPath.includeEdges, true ). с (ShortestPath.maxDistance, 1) .toList (). toArray ()). map (unfold (). values ('name', 'weight'). fold ())
Оба приведенных выше результата приводят к следующей ошибке
Компиляция запроса Gremlin Ошибка: невозможно разрешить символ 'ShortestPath'
public class Node{
public long Id {get;set;}
public Lat {get;set;}
public Lon {get;set;}
public List<Rail> RailsOut {get;set;}
}
public class Rail {
public long Id {get;set;}
public double Length {get;set;}
}