【问题标题】:Gremlin .repeat() max depthGremlin .repeat() 最大深度
【发布时间】:2021-12-05 07:23:35
【问题描述】:

我有一个数据集,其中包含代表一系列记录事件的数百条路径。我想知道平均事件路径有多长。它存储在一个非常简单的图表中,在 Azure Cosmos Graph DB 上大约有 50k 个节点。

我有一个如下所示的 gremlin 查询:

g.V().hasLabel('user').out('has_event').repeat(out('next').simplePath()).until(out().count().is(0))

遍历所有事件,直到事件链结束。

但是,我收到以下错误:Gremlin Query Execution Error: Exceeded maximum number of loops on a repeat() step. Cannot exceed 32 loops. 我不知道 32 循环的限制,我的分析想法将多次超过 32 步长的路径。

有没有办法实现我正在尝试做的事情,或者 cosmos DB 在 32 个循环后真的“停止”了吗? Neo4j 等其他图形数据库怎么样?

【问题讨论】:

    标签: azure-cosmosdb gremlin graph-databases tinkerpop


    【解决方案1】:

    那是limit of CosmosDB。我不知道有此限制的其他 TinkerPop 实现,因此选择另一个图形数据库可能会解决您的问题。我怀疑这个限制是为了防止查询的失控扇出,因为你的图表结构会极大地影响性能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-12
      • 1970-01-01
      • 2018-04-14
      • 2015-06-08
      • 2011-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多