当前位置: 首页 > 知识库问答 >
问题:

如何在JanusGraph中遍历使用ConfiguredPlanFactory创建的图形?

吴浩皛
2023-03-14
client.submit(String.format("ConfiguredGraphFactory.create(\"%s\")", graphName));

但是,我无法获得使用gremlin驱动程序创建的图形的traversalSource。我是否必须创建原始的gremlin查询并使用Client.Submit遍历图,或者是否有一种方法通过gremlin驱动程序使用EmptyGraph.Instance()获得它。

共有1个答案

汤修贤
2023-03-14

进一步解释一个潜在的解决方案:

>

  • 更新服务器的启动脚本,将g绑定到某个变量:

    globals << [g : DynamicBindingTool.getBoundGraphTraversal()]
    

    创建DynamicBindingTool,它必须做两件事:

    setBoundGraph(graphName) {
        this.boundGraph = ConfiguredGraphFactory.open(graphName);
    }
    
    getBoundGraphTraversal() {
        this.boundGraph.traversal();
    }
    

    最后,我想指出,建议的示例解决方案没有考虑多节点JanusGraph集群,即当前绑定图的概念不会在JG节点之间共享。要使这成为一个多节点的解决方案,您可以更新函数以在外部数据库上定义绑定图,甚至可以在JanusGraph图上定义绑定图。

    例如,类似这样的东西将是一个多节点安全实现:

    setBoundGraph(graphName) {
        def managementGraph = ConfiguredGraphFactory.open("managementGraph");
        managementGraph.traversal().V().has("boundGraph", true).remove();
        def v = managementGraph.addVertex();
        v.property("boundGraph", true);
        v.property("graph.graphname", graphName);
    }
    

    和:

    scala prettyprint-override">getBoundGraphTraversal() {
        def managementGraph = ConfiguredGraphFactory.open("managementGraph");
        def graphName = managementGraph.traversal().V().has("boundGraph", true).values("graph.graphname");
        return ConfiguredGraphFactory.open(graphName).traversal();
    }
    

  •  类似资料:
    • 问题内容: 从文档和示例开始,我一直在尝试使用JDK7中的新globbing功能 我可以得到诸如与 示例,但我一直无法使语法正常工作。我希望能够创建如下内容: 并感谢一个简单的例子。我正在使用Windows 7。 更新:@Oleg和@JBNizet清楚地表明“ /”语法与操作系统无关。请注意,Javadocs建议也可以使用与操作系统有关的语法(必需)。 仍然存在的问题:已经采用@Nizet并进行了

    • 问题内容: 您将如何遍历map中的条目,以便可以同时输入条目键和值?例如,我想做这样的事情: 问题答案: 从文档中,我发现此语法有效:

    • 本文向大家介绍JavaScript中的图遍历,包括了JavaScript中的图遍历的使用技巧和注意事项,需要的朋友参考一下 图遍历(也称为图搜索)是指访问(检查和/或更新)图中每个顶点的过程。此类遍历按访问顶点的顺序分类。

    • 问题内容: 我有一个可以用SwiftyJSON解析的json: 完美运作。 但是我无法遍历它。我尝试了两种方法,第一种是 XCode不接受for循环声明。 第二种方法: XCode不接受if语句。 我究竟做错了什么 ? 问题答案: 如果要遍历数组,请尝试: 至于第二种方法,返回 非 数组,应该使用:

    • 目前,结构是一棵树,但如果有循环,上面的代码是否防止了无休止的循环?如果没有,这又怎能做到呢?

    • 无论是调试的需要还是修改节点和边,你可能都需要在现有的有向有环图中进行遍历,下面就介绍图遍历的一些方法。 简单访问 节点和边有很多属性和方法是用来遍历的,边的 from 和 to 属性就是例子,而节点更多: 类型 名称 作用 属性 upstreamNodes 当前节点的所有上游节点 属性 downstreamNodes 当前节点的所有下游节点 属性 upstreamTransforms 当前节点的