将 gremlin CLI 连接到远程 tinkerpop gremlin-server

Connecting gremlin CLI to a remote tinkerpop gremlin-server

使用 gremlin-javascript,我连接到远程服务器使用:

const gremlin = require('gremlin')
const Graph = gremlin.structure.Graph
const DriverRemoteConnection = gremlin.driver.DriverRemoteConnection
const graph = new Graph()

const g = graph
  .traversal()
  .withRemote(new DriverRemoteConnection('ws://localhost:8182/gremlin'))

在 gremlin CLI 中,我可以使用

设置 TinkerGraph
gremlin> graph = TinkerGraph.open()
gremlin> g = graph.traversal()

但是,我想在 localhost:8182 连接到我的 Graph。这并不能完全解决问题:

gremlin> graph = RemoteGraph.open('ws://localhost:8182/gremlin')

这也不完全是:

gremlin> graph = TinkerGraph.open()
gremlin> g = graph.traversal().withRemote(new DriverRemoteConnection('ws://localhost:8182/gremlin'))

如何从 CLI 连接到此服务器?

Gremlin 控制台内置了对此的支持,并对其进行了详细描述 here。基本的连接命令是:

gremlin> :remote connect tinkerpop.server conf/remote.yaml
==>Configured localhost/127.0.0.1:8182

此时您可以对远程图发出遍历:

gremlin> :> g.V().values('name')
==>marko
==>vadas
==>lop
==>josh
==>ripple
==>peter

如果您想删除 :> 语法,您可以将 REPL 置于 "console" 模式,这样就不再需要该前缀了:

gremlin> :remote console
==>All scripts will now be sent to Gremlin Server - [localhost/127.0.0.1:8182]-[5ff68eac-5af9-4140-b3b8-d9311f30c053] - type ':remote console' to return to local mode