【问题标题】:TinkerPop Gremlin: Vender independent Vertex IDTinkerPop Gremlin:独立于供应商的顶点 ID
【发布时间】:2018-06-20 11:36:30
【问题描述】:

总结

我正在编写一个适用于 orientdb 和 neo4j 的 gremlin 脚本。

举个例子,假设我们想用id 1 加载一个顶点 对于 neo4j,我们将 gremlin 脚本编写为 g.V(1) 和 orientDB g.V('#17:0')

这样我的脚本应该为这两个数据库运行?

【问题讨论】:

    标签: orientdb gremlin gremlin-server


    【解决方案1】:

    您不能拥有独立于供应商的元素标识符,因为大多数图形系统不允许您分配标识符,Neo4j 或 OrientDB 也不允许这样做。无论如何,您可能不应该在代码中硬编码标识符,因为我相信这些标识符可能会根据图形系统在您的下方发生变化。

    正确的方法是依赖索引并更喜欢将遍历编写为:

    g.V().has('myId', 1234)
    

    在这种情况下,任何图形数据库都可以解决这个问题。如果您确实使用本机图形标识符,我建议您始终将它们视为代码中的变量,如下所示:

    Object vid = g.V().has('myId', 1234).id().next()
    ...
    g.V(vid).out().....
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-15
      • 1970-01-01
      • 1970-01-01
      • 2019-05-14
      • 2021-04-20
      • 2022-11-11
      • 2021-12-25
      • 2020-12-29
      相关资源
      最近更新 更多