OrientDB GraphDatabase:用于@RID的OSQLSynchQuery来获取graph.getVertex(rid)...从索引键加载顶点的最快方法?

时间:2012-06-10 17:03:00

标签: bigdata orientdb gremlin

鉴于基本的蓝图兼容OrientGraph与索引'名称'(独特或不唯一),如果需要,有关如何改进以下内容的任何建议吗?

注意:我找不到使用索引加载[蓝图]顶点的权威指南。我有一个大图和使用has('name','bob')(在控制台中)需要2分钟!另一方面,基于索引的搜索以毫秒为单位返回。

到目前为止我想出的最好:

OrientGraph graph = new OrientGraph("local:/graph1/databases/test", "admin", "admin");
List<ODocument> resultlist = graph.getRawGraph().query(new OSQLSynchQuery<ODocument>("SELECT FROM INDEX:name WHERE KEY = 'bob'"));
ODocument resultodoc = resultlist.get(0).field("rid");
String rid = resultodoc.getIdentity().toString();  // would return something like #6:1500000
Vertex v1 = graph.getVertex(rid);
System.out.println(v1.getProperty("name"));

1 个答案:

答案 0 :(得分:0)