我正在使用一個框架生成對象Node
,他們已經分配了一個ID。現在,他們需要轉換到泰坦頂點與框架(與node.id
訪問)控制的相同ID如何覆蓋Titan數據庫中的頂點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嗎?泰坦是否有辦法做到這一點?
謝謝!
好的答案!謝謝!我的上下文唯一的問題是,我想在基準測試中使用或不使用關鍵指標。它索引數據庫中的頂點查找或者索引自定義id x真實id之間的賦值?再次感謝 – Luccas
如果您需要在沒有關鍵指標的情況下工作,請使用「id」以外的名稱(例如「iid」)創建一個屬性名稱。你沒有提到你的基準是什麼,但沒有關鍵指標,你可能會看到一些相當不好的結果,因爲「iid」的查詢最終將成爲線性掃描。你問我問的問題與泰坦如何存儲關鍵指數本身有關。如果是這樣,這個鏈接可能會有所幫助:https://github.com/elffersj/delftswa-aurelius-titan/blob/master/SA-doc/Mapping.md –
如果你想邊緣上的自定義ID也IdGraph(base,true,真的),那麼你可能需要創建__id屬性之前,我需要它在0.3.0 https://github.com/thinkaurelius/titan/issues/179 –