泰坦:提取排序结果



采用SO的场景,

  1. 当我们单击Questions按钮时,它显示了所有问题,无论标签如何,

  2. 当我们单击tag时,它仅显示问的问题。

第二可以,我只能转到该特定的标签顶点,并根据附件的边缘获取排序的数据。

我将如何按顺序实现第一个方案。我将有Java问题,HTML问题,C 问题顶点...所以。我将如何以分类顺序获取所有这些?查询是什么?

显然,您正在尝试避免迭代/排序所有顶点以查找最近的问题。一种方法可能是在您的模式中构建某种日期结构,例如:

year --> month --> day --> question

如果您的用例中有足够数量的"问题",则可能会考虑将时间降至几个小时,分钟等(或更高的聚合水平。...也许您只需要一年和月份)。索引一年,月,日和使用反向排序的时间之间的边缘,以便您可以做:

g.V('year','2014').out.out.out[0..<10]

这将返回前10个最近的问题。请注意,Gremlin很好地将其编译到顶点查询中以利用您的索引:

gremlin> g.V.has('year','2014').out.out.out[0..<10].toString()
==>[GremlinStartPipe, GraphQueryPipe(has,vertex), IdentityPipe, VertexQueryPipe(out,[],vertex), VertexQueryPipe(out,[],vertex), VertexQueryPipe(out,[],range:[0,9],vertex), IdentityPipe]

最新更新