如果不遍历整个事物,我似乎无法在图中找到特定节点。有什么我想念的吗?
我正在使用 tinkerpop 蓝图。
Orientdb 为诸如“#8:1”之类的节点提供了某种无语义的 id - 我如何在不知道 id 的情况下找到它?顶点有一个像'user=jason'这样的属性来识别它。我在想我将只使用 redis 来存储用户/位置对或以其他方式使用超级节点(不,谢谢)
蓝图具有关键索引的概念。
https://github.com/tinkerpop/blueprints/wiki/Graph-Indices
给定您的示例,为“用户”定义一个键索引,然后使用键索引对其进行查询。下面是一个在 Gremlin 提示符下使用 OrientDB 的示例:
gremlin> g = new OrientGraph("memory://graph")
==>orientgraph[memory://graph]
gremlin> g.createKeyIndex("user", Vertex.class)
==>null
gremlin> g.addVertex([user:"Jason"])
==>v[#8:-3]
gremlin> g.addVertex([user:"Rick"])
==>v[#8:-4]
gremlin> g.stopTransaction(SUCCESS)
==>null
gremlin> g.V('user','Jason')
==>v[#8:1]