使用 Gremlin GraphFactory 连接到 AWS Neptune

Connecting to AWS Neptune with Gremlin GraphFactory

AWS documentation 上的示例展示了如何使用 Gremlin 连接到 AWS Neptune,如下所示:

Cluster.Builder builder = Cluster.build();
builder.addContactPoint("your-neptune-endpoint");
builder.port(8182);
builder.enableSsl(true);
builder.keyCertChainFile("SFSRootCAG2.pem");

Cluster cluster = builder.create();

GraphTraversalSource g = EmptyGraph.instance().traversal().withRemote(DriverRemoteConnection.using(cluster));

但是,我当前连接到通用 Gremlin 图的代码如下所示:

Configuration conf = new PropertiesConfiguration(...);
...    //Set configuration
Graph graph = GraphFactory.open(conf);

有谁知道如何使用第二种方法和 GraphFactory 连接到 Neptune?我无法在任何地方找到任何示例。

Neptune 不提供 Graph 实例,因为 Gremlin 是远程执行的,而不是本地执行的。 GraphFactory 实际上仅适用于您要创建 Graph 实例的情况。曾经有一个 RemoteGraph 允许这样做(虽然仍在 TinkerPop 测​​试套件中使用),但这种方法早已被放弃,不再被推荐。

您最初介绍的连接到 Neptune 等 Remote Gremlin Provider 的方法是建立 GraphTraversalSource 的推荐方法。然而值得注意的是,从 3.3.5 开始,首选方法摆脱了 EmptyGraph 并允许您匿名实例化 GraphTraversalSource,如下所示:

import static org.apache.tinkerpop.gremlin.process.traversal.AnonymousTraversalSource.traversal;

GraphTraversalSource g = traversal().withRemote('conf/remote-graph.properties');

withRemote() 的其他重载应该看起来也很熟悉。