【发布时间】:2021-03-08 03:23:00
【问题描述】:
我有一个包含大约 200 万个节点和事务连接的数据库,存储在 Neptune 数据库中。
我正在尝试两个具有相似问题的不同查询,但我不知道如何解决其中任何一个问题。
第一个查询试图从一个用户开始生成一个 2 跳图。查询是g.V(source).outE('friend').otherV().outE('friend').toList()。对于 1 跳图,查询工作正常,但对于 2 跳或更多,我有以下错误:
gremlin_python.driver.protocol.GremlinServerError: 598: {"detailedMessage":"脚本中发生超时或在评估 [1e582e78-bab5-462c-9f24-5597d53ef02f]","code" 期间直接取消: "TimeLimitExceededException","requestId":"1e582e78-bab5-462c-9f24-5597d53ef02f"}
我正在做的第二个查询是查找从源节点到目标节点的路径(不需要是最短的,而只是一条路径)。执行此操作的查询如下:g.V().hasId(str(source)).repeat(__.out().simplePath()).until(__.hasId(str(target))).path().limit(1).toList()
该查询适用于相对较近的节点对(最多 4 跳距离),但对于更远的节点对,我收到以下错误:
*** tornado.ioloop.TimeoutError: 操作在 30 秒后超时
我想知道是否有人对如何解决这些时间限制错误有建议。非常感谢您对此提供任何帮助,谢谢!
【问题讨论】:
标签: amazon-web-services amazon-neptune