2012-09-24 38 views
0

在playOrm自述,下面的查詢列出:如何在分區內建立索引?

//首先,在Activity.java,你將有一個NoSqlQuery像這樣 @NoSqlQuery(NAME = 「queryByValue」,查詢=「分區的(: PARTID)選擇一個FROM TABLE爲「+ ‘WHERE a.price>:值和a.numShares < 10’)

我理解多麼容易它來選擇正確的分區來查詢,但條款」 a.price>:value「正在CF列上選擇某項內容。即使分區內有少量行,我是否也需要此列的索引?如何使用playOrm創建它?

回答

1

對不起,有時需要我1天的時間來回復。

PARTITIONS a(:partId) SELECT a FROM TABLE as a "+ "WHERE a.price > :value and a.numShares < 10" 

當你說「正確的分區」時,我假設你的意思是正確的分區而不是左/右。以上是寫在JQL,所以我可以寫一個基於該查詢實體的一部分

MyEntity { 
    @NoSqlIndexed 
    private BigDecimal price; 
    @NoSqlIndexed 
    private int numShares; 

    //other fields 
} 

註解告訴playOrm以指數價格和numShares領域。目前,只有在編制索引時才能使用WHERE子句中的字段....隨着我們添加更多功能,將來可能會發生變化。

所以你不需要創建一個分區,PlayOrm會做到這一點。要在稍後創建索引,目前的方法是將@NoSqlIndexed添加到現有實體,然後映射/減少讀取行並保存行.....我們正在努力解決這個問題,以便您可以運行我們的地圖/減少工作重新索引集羣中的某些內容。

關於你的問題,有些人收 playOrm basic setup + playOrm maturity

我認爲這是有效的

  1. 我剛纔已經回答了類似的入門這裏的問題Getting Started with PlayORM
  2. 成熟度的問題....

    而且PlayOrm已經有62個測試,我們正在使用它進行生產。

以後, 院長