Apache TinkerPop Gremlin 查询语言未转换为经过优化以在底层 Neptune 引擎上运行的特定于 Neptune 的步骤

问题描述 投票:0回答:1

我在AWS neptune集群上使用explain() API,如下-

GraphTraversalSource g = getTraversal(cluster);
TraversalExplanation explain = g.V().hasLabel("Users").explain();
System.out.println(explain.prettyPrint());

正在打印以下 3 个遍历,即原始遍历、远程遍历和最终遍历。

遍历说明- 原始遍历 [GraphStep(vertex,[]), HasStep([~label.eq(Users)])]

RemoteStrategy [D] [RemoteStep(DriverServerConnection-neptune-cluster:8182 [graph=g]) ]

最终遍历 [RemoteStep(DriverServerConnection-neptune-cluster:8182 [graph=g]) ]


但正如文档中提到的,使用解释 API 时也会打印以下选项。为了使用 java 代码打印以下附加步骤,需要对上面的代码进行哪些更改。

原创穿越, 转换后的遍历, 海王星步骤:, 优化遍历, 海王星步骤:, 谓词,

AWS 文档参考链接 - https://docs.aws.amazon.com/neptune/latest/userguide/gremlin-explain-api.html

java gremlin amazon-neptune tinkerpop
1个回答
0
投票

explain()
步骤返回 TinkerPop 解释输出。 要获取 Neptune Gremlin 解释(或配置文件)输出,您需要将查询发送到相应的 API 端点。

如果您想在 Java 中执行此操作,最简单的方法是使用 AWS Java SDK 和 NeptunedataClient: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/neptunedata/ NeptunedataClient.html

executeGremlinExplainQuery
 executeGremlinProfileQuery
都有API。

如果您使用的是 Neptune Notebook 实例,您还可以使用以下任一方式查看 Gremlin 查询的 Neptune 解释/配置文件输出:

%%grmelin explain

%%gremlin profile

从笔记本单元运行 Gremlin 时。

© www.soinside.com 2019 - 2024. All rights reserved.