在playOrm自述文件中,列出了以下查询:
//首先,在Activity.java上,你将有一个类似的NoSqlQuery @NoSqlQuery(name =“queryByValue”,query =“PARTITIONS a(:partId)SELECT FROM FROM TABLE as”+ “WHERE a.price>:value and a.numShares< 10”)
我理解选择要查询的正确分区是多么容易,但是“a.price>:value”这一条款正在CF列上选择一些东西。即使我在分区内有很少的行,我也不需要这个列的索引吗?如何使用playOrm创建它?
答案 0 :(得分:1)
抱歉,有时候我需要1天的时间来回复。
PARTITIONS a(:partId) SELECT a FROM TABLE as a "+ "WHERE a.price > :value and a.numShares < 10"
当你说&#34;右分区&#34;时,我认为你的意思是正确的分区而不是左/右。以上是用JQL编写的,所以我可以根据该查询编写部分实体
MyEntity {
@NoSqlIndexed
private BigDecimal price;
@NoSqlIndexed
private int numShares;
//other fields
}
注释告诉playOrm索引price和numShares字段。目前,只有在索引时才能使用WHERE子句中的字段....随着我们添加更多功能,这可能会在将来发生变化。
因此您不需要创建分区,PlayOrm会这样做。要在以后创建索引,当前的方法是将@NoSqlIndexed添加到现有实体,然后映射/减少读取行然后保存行.....我们正在努力解决这个问题,以便您可以运行我们的地图/减少作业以重新索引整个群集中的某些内容。
还有一些人关闭playOrm basic setup + playOrm maturity
的问题我认为是有效的
后, 迪安