gpt4 book ai didi

graph - 无法通过 ID 访问特定顶点,在 Gremlin 控制台中使用 TinkerGraph

转载 作者:行者123 更新时间:2023-12-04 01:52:24 26 4
gpt4 key购买 nike

我无法通过执行 g.V(3640).valueMap(true).unfold() 选择特定的顶点。在 g.V() 命令的括号之间包含 ID 的任何命令似乎都不起作用。

这是我做的:

我是图形数据库的新手,正在尝试使用 Gremlin 控制台。我首先创建一个实例:

graph = TinkerGraph.open()
g=graph.traversal()

并通过导入.graphml 数据库文件加载示例数据:

g.io(graphml()).readGraph('/full/path/to/air-routes-latest.graphml')

这似乎工作正常,因为计数会返回一个不错的结果

gremlin> g.V().count()
==>3642

很遗憾,以下内容不起作用:

gremlin> g.V(3640).valueMap(true).unfold()

我认为这很奇怪,因为通过执行以下命令

gremlin> g.V()
==>v[3640]
==>v[2306]
...

ID 似乎确实存在。为什么我无法访问特定 ID 有什么想法吗?我尝试了不同的命令,但 g.V() 似乎工作正常,而 g.V(3640) 却不行。是因为我使用 TinkerGraph 而不是 Gremlin 数据库,可能是什么问题?

编辑:

似乎我的 id 被保存为字符串,因为 g.V("2").valueMap(true).unfold() 确实给我结果。

最佳答案

我认为您可能对标识符的“类型”有疑问。我怀疑如果你这样做:

g.V(3640L)

你会得到你想要的顶点。默认情况下,TinkerGraph 使用 equals() 处理 id 相等性,因此如果您尝试在 id 很长时查找整数,它会表现得好像它不存在一样。如果您喜欢讨论的 IdManager 配置,可以修改该默认值 here .请注意,这也在 Practical Gremlin 中进行了更详细的讨论。 .

关于graph - 无法通过 ID 访问特定顶点,在 Gremlin 控制台中使用 TinkerGraph,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52389980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com