Azure cosmosdb Gremlin查询cosmosDB以查找连接

Azure cosmosdb Gremlin查询cosmosDB以查找连接,azure-cosmosdb,gremlin,Azure Cosmosdb,Gremlin,我有一个这样建模的图。A-调用'for','Item1'->B-调用'for','Item1'->C-调用'for','Item1'->D。 A调用B以获取边的Item1属性。B调用C,C调用D。在图中,也可能有其他链会对Item1调用顶点D。如何确定所有这些链?为Item1调用D的所有方式 如果问题太简单,请道歉。我对图形的了解非常少,我正在使用cosmosDB对此进行建模。我想我会从D开始,然后使用repeat从D开始跟踪Item1路径。假设D是实际的T.id元素标识符: g.V("D").

我有一个这样建模的图。A-调用'for','Item1'->B-调用'for','Item1'->C-调用'for','Item1'->D。 A调用B以获取边的Item1属性。B调用C,C调用D。在图中,也可能有其他链会对Item1调用顶点D。如何确定所有这些链?为Item1调用D的所有方式


如果问题太简单,请道歉。我对图形的了解非常少,我正在使用cosmosDB对此进行建模。

我想我会从D开始,然后使用repeat从D开始跟踪Item1路径。假设D是实际的T.id元素标识符:

g.V("D").repeat(inE('calls').has('for','Item1').outV()).emit().path()

以上就是这种质疑的开始。您可能需要该重复循环的终止条件和避免循环的方法,例如,如果图形包含这样的内容,则需要simplePath,以避免沿着这样的路径进行无限次遍历。

但这会导致大量重复。如何优化此查询以消除输出中的重复数据。可以通过在遍历结束时添加重复数据消除来消除精确的路径重复。