我的应用目前正在使用Titan 0.5.4作为其图形数据库并执行以下操作 -
解析给定的原始数据,然后创建包含已解析数据的顶点,并使用输入数据字段的组合创建唯一标识符。 稍后,在查询图形时,它会重新创建相同的唯一标识符,以检查数据是否已存在(并获取它)。
我目前正在迁移到Titan 1.0.0, 而且我找不到像以前那样设置顶点ID的方法。
如何在Titan 1.0.0上设置顶点ID?
一种可能的解决方法是创建一个索引属性(所谓的id2),但对我来说似乎是多余的。
由于
答案 0 :(得分:2)
很抱歉,您无法在Titan中设置顶点ID,因为它是在构造时生成的。 This和this是基本上问同样问题的问题。
在Titan的情况下,我认为id指的是磁盘上的实际位置)。如上所述here:
(64位)顶点id(Titan唯一分配给每个顶点)是指向包含顶点邻接列表的行的键
答案 1 :(得分:1)
似乎titan事务仍然允许您在创建顶点时提供id。 请注意,这可能是一个错误,可能会在下一个版本中删除。 https://github.com/thinkaurelius/titan/blob/titan10/titan-core/src/main/java/com/thinkaurelius/titan/core/TitanTransaction.java
我认为解决此问题的一种合理方法是在每个顶点上添加属性键和复合索引,并将其用于查询。
答案 2 :(得分:0)
为什么不创建一个可以编制索引以提供相同功能的属性?