GAE Search Api SortOptions如何运作?

时间:2015-11-18 16:24:37

标签: java google-app-engine google-search-api

我对SortOptions的工作方式感到有些迷失。

说我的查询是

Query query = Query.newBuilder()
                .setOptions(QueryOptions.newBuilder().setLimit(RESULT_SIZE).setReturningIdsOnly(true).setSortOptions(sortOptions).build())
                .build(queryText);//RESULT_SIZE=300

现在说我有4000个文件左右,我想只抓取最新的文件。它首先抓取300个文件然后对它们进行排序吗?或者它是否对所有4000个文档进行排序,然后返回300个最新文档?假设我当然在做

SortOptions sortOptions = SortOptions.newBuilder()
    .addSortExpression(SortExpression.newBuilder()
        .setExpression("date")
        .setDirection(SortExpression.SortDirection.DESCENDING)
        .setLimit(RESULT_SIZE)//RESULT_SIZE=300
    .build();

1 个答案:

答案 0 :(得分:0)

您希望通过SortOptions限制尽可能多地获取,限制为10,000,然后对其进行排序并应用QueryOptions限制。