【发布时间】:2020-12-18 19:10:28
【问题描述】:
我正在 AWS 海王星上运行一个 gremlin 查询,过去需要 2.5 分钟才能得到结果,
我保留了我的 neptune_query_timeout = 500000,海王星引擎版本是1.0.4.1
最近我在同一个查询中看到了这个错误,它只是用来在早期正常工作-
{'error': TimeoutError('Operation timed out after 30 seconds',)}
在我看来,海王星上的实际查询并没有超时,我已经在配置文件中保留了 500000 的长时间超时,并且它以前可以正常工作。
最近我看到了上述错误,不知道如何克服这个问题。
已编辑
图表看起来像
用户(节点)----玩过(边缘)----->游戏(节点)
所以我要运行的实际查询是这个-
g.V().hasLabel('users').where(outE('played').count().is(gt(10)))
它运行良好,并为我提供了所有玩过 10 次以上的用户,或者换句话说,用户节点有 10 个或更多“玩过”的边。
但是当我只想要用户数并修改如下查询时,我遇到了超时错误。
g.V().hasLabel('transient_id').where(outE('visited').count().is(gt(10))).count().next()
感谢任何帮助,谢谢
【问题讨论】:
-
您可以通过 Neptune Gremlin Profiler 运行查询并在此处发布输出吗?不是 profile() 步骤,而是这个:docs.aws.amazon.com/neptune/latest/userguide/… 你也可以通过 Neptune Notebooks 中的
%%gremlin profile获得这个。 -
您使用的是自定义端点吗?如果是,您介意尝试使用默认的数据库集群端点吗?
-
另外,如果您在客户端使用 TornadoTransport,请确保您不使用默认超时:github.com/apache/tinkerpop/blob/master/gremlin-python/src/main/…
标签: amazon-web-services gremlin amazon-neptune gremlinpython