我正在使用一个生成对象Node
的框架,它们已经分配了一个ID。现在需要将它们转换为具有相同ID的Titan顶点,并在框架中进行控制(通过node.id
访问)。
public long addNode(Node node) {
TitanVertex vertex = (TitanVertex) g.addVertex(null);
g.commit();
vertex.setProperty(ID, node.id);
vertex.setProperty(TYPE, node.type);
vertex.setProperty(VERSION, node.version);
vertex.setProperty(TIME, node.time);
vertex.setProperty(DATA, node.data);
...
错误:
java.lang.IllegalArgumentException: Name is reserved: id
但是似乎不允许这样做。我应该使用一些虚假属性来模拟二级ID吗?Titan是否有实现这个的方法?
谢谢!
g.getVertices("vid", "id123");
。我认为这对Titan来说更加自然。这里的vid
将是顶点的ID。 - Manish KumarIdGraph
基本上就是这样做的,它使用一个键索引来查找顶点。因此,当您执行g.getVertex("id123")
时,它知道要引用 "vid",从而使您无需输入它。 - stephen mallette