【问题标题】:How to connect to embedded inmemory Janusgraph via Gremlin Console如何通过 Gremlin 控制台连接到嵌入式内存 Janusgraph
【发布时间】:2019-11-14 03:59:03
【问题描述】:

我有一个 Spring Boot Java 服务器,其中嵌入了内存中的 JanusGraph 实例。当我的服务器正在运行时,我想通过 Gremlin 控制台连接到内存中嵌入的 JanusGraph 实例以进行验证。

这是我在内存中建立嵌入式 JanusGraph 实例的方式:

@Bean
public JanusGraph janusGraph() {
  JanusGraphFactory.Builder builder = JanusGraphFactory.build()
    .set("storage.backend", "inmemory")
  return builder.open();
}

我之前已经从我的应用程序建立了与内存中的 gremlin-server 的连接,我可以通过 gremlin 控制台连接到该服务器,但我希望将 JanusGraph 嵌入到我的应用程序中。

我想要这样的东西:

:remote connect tinkerpop.server conf/remote.yaml session-managed

但对于嵌入内存中的 Janusgraph 实例。

我真的想知道是否有任何方法可以通过 gremlin 控制台连接到嵌入式 janusgraph 实例。谢谢!

【问题讨论】:

    标签: gremlin tinkerpop3 janusgraph


    【解决方案1】:

    这是不可能的。通过 gremlin 控制台连接到远程 JanusGraph 实例需要 Gremlin Server 或其他 Remote Gremlin Provider。由于您在自己的应用程序中嵌入了 JanusGraph 实例,而没有公开符合 Tinkerpop 的 gremlin 服务器/远程 gremlin 提供程序,因此无法远程连接。文档位于:

    https://docs.janusgraph.org/basics/deployment/#embedded-janusgraph

    不要直接陈述这个事实,但它似乎是隐含的。

    还可以在以下位置查看 tinkerpop 文档:

    http://tinkerpop.apache.org/docs/current/reference/#connecting-gremlin

    有关连接到图表的更多详细信息。

    【讨论】:

    • 好的,感谢您的回复。您知道是否可以从自定义应用程序中公开该功能? ':remote connect' 命令需要一个插件(通常是 tinkerpop.server)。我的想法是,可以通过开发我自己的插件来将我自己的应用程序的某些功能暴露给服务器,即 gremlin 控制台连接,但这个想法是半生不熟的。你有这方面的知识吗?谢谢!
    • 可能吗?是的。容易做到吗?我不知道。 Tinkerpop 和 Janus graph 是开源的,因此您可以在各自的代码存储库中查看它们是如何做到的。 janusgraph 实现似乎是来自 apache 的 gremlin-server 的一个精简包装,因此仔细阅读他们的代码可能会让您对快速入门方法有所了解。
    • @CodyMartin,这方面运气好吗?你能通过 gremlin 控制台连接吗?
    猜你喜欢
    • 1970-01-01
    • 2019-07-27
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多