17

我使用 gremlin-console(即 janusgraph)远程连接到 gremlin 服务器,但是当我创建变量并访问它时,它不起作用。我的最终目标是使用 gremlin-console 创建索引...

gremlin> :remote connect tinkerpop.server conf/remote.yaml
==>Configured localhost/127.0.0.1:8182
gremlin> :remote console
==>All scripts will now be sent to Gremlin Server - 
[localhost/127.0.0.1:8182] - type ':remote console' to return to local mode
gremlin> a = "b"
==>b
gremlin> a
No such property: a for class: Script3
Type ':help' or ':h' for help.
4

2 回答 2

23

您不能将这样的变量用于后续请求,因为默认情况下控制台是无会话的。因此,每个请求都在其自己的事务中执行,并且两个不同的请求之间不共享任何状态。

但是,您可以通过简单地将关键字附加到参数来配置控制台以使用会话sessionconnect

gremlin> :remote connect tinkerpop.server conf/remote.yaml session
==>Configured localhost/127.0.0.1:8182-[15dc7030-0e5b-4b4b-a997-9d2cf519ebb2]
gremlin> :> x = 1
==>1
gremlin> :> y = 2
==>2
gremlin> :> x + y
==>3

我从本主题的 TinkerPop 文档中复制了这个示例。

于 2017-08-18T07:39:32.447 回答
3

下载 janusdb 并通过运行启动 gremlin 控制台

/bin/gremlin.sh

使用以下命令构建 Janus 图:

gremlin> graph = JanusGraphFactory.open('conf/janusgraph-cassandra-solr.properties')

通过运行获取图形遍历源:

gremlin> g = graph.traversal()

现在您可以完全控制直接连接到数据库。您可以存储返回值并在下一个查询中使用它。

于 2017-10-28T03:13:13.280 回答