TitanDB - 按时间戳降序构建 属性 索引

TitanDB - Build a property index in descending order by timestamp

TitanDB 1.0.0(在 DynamoDB 之上)

小精灵 3

我有一组带有标签 a 的顶点。我在那些顶点上有一个类型为 long 的 属性,它对应于从 1970 年 UTC 开始的以毫秒为单位的时间(创建顶点时的时间戳)。当我拉回那些顶点时我希望能够按 decsending 顺序将它们拉回来。

如何在 decr 订单中的 属性 上创建索引 Titan Management System?

文档对此似乎含糊不清。

我找到的最接近的是

public RelationTypeIndex buildPropertyIndex(PropertyKey key, String name, Order sortOrder, PropertyKey... sortKeys)

但是我要输入什么作为 key 和 sortKeys?我希望能够拉出按时间戳 属性

排序的整个顶点

编辑:我目前知道的唯一方法是在边上复制 属性 并在边上使用以顶点为中心的索引提高性能。

我在特定产品的发布日期之前订购了类似的东西。如果你想有效地执行 order().by("Value", decr) 那么我强烈建议阅读指定的混合索引 here。混合索引使这些操作可以快速完成。

您可能正在寻找的示例:

TitanGraph graph = TitanFactory.open(config);
TitanManagement mgmt = graph.openManagement();
PropertyKey key = mgmt.makePropertyKey("TimeStamp").dataType(Long.class).make();
mgmt.buildIndex("timeStampIndex", Vertex.class).addKey(key).buildMixedIndex("search");
mgmt.commit();

以上索引让我可以非常快速地执行以下查询:

g.V().order().by("TimeStamp", decr);

这让我按降序排列时间戳。上面的遍历在没有索引的情况下也可以工作,但在大图中可能会很慢。