2014-03-12 65 views
0

取這樣的情況下,泰坦:取排序結果

  1. 當我們點擊Questions按鈕,它會顯示所有問題,無論標籤,

  2. 當我們點擊一​​個tag那隻能說明問題問那個特定的標籤。

第二是好的,我會去那個特定的標籤頂點,並基於附加的邊緣獲取排序的數據。

我將如何按排序順序實現第一個場景。我將有Java問題,HTML問題,C++問題頂點...如此等等。我將如何按排序順序獲取所有這些內容?什麼將是查詢?

回答

0

顯然,您正試圖避免迭代/排序所有頂點以查找最近的問題。一種方式是建立某種日期結構爲您的模式,如:

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] 
+0

我認爲問題是,如何構造標記和問題而不標記頂點。對於日期而言,使用額外結構的意義何在,而不僅僅是UNIX時間戳? –

+0

我把這個問題解釋爲一個問題,就是如何檢索圖中最近的問題頂點(提及「標籤」是附帶在帖子上的)。也許我誤解了......我會讓@Manish澄清我是否理解了。我不確定我是否遵循了你的問題,但是「關於日期的額外結構,而不僅僅是UNIX時間戳」。你的意思是,爲什麼不僅僅依靠問題頂點上的時間戳屬性來尋找最近的問題呢?如果你能爲我闡述,我可以試着回答。 –

+0

我的理解是讓'year'' month''''' vertex然後連接'question'頂點到'day'。以排序的順序爲所有這些'天 - >問題'索引索引。然後從'year'到'month'遍歷到'day'來得到結果。好嗎? – manish