我只需要从 Solr 索引中获取特定的(“第 n 行”类型)。例如,如果完整结果包含 10000 行,我只想接收每个 100 项存储桶的第一行和最后一行。
项目 1 和 100 项目 101 和 200 项目 201 和 300...
这种分组是动态的并且取决于结果的数量。因此,如果总结果行只有 5000 行,则存储桶大小为 50 而不是 100。我可以计算实际索引,但问题是如何从 Solr 获取这些索引。
没有可直接用作查询参数的索引字段。在实践中,我正在搜索“名称以 A 开头”(或其他字母),并希望收到以 A 开头的第 1 项,以 A 开头的第 100 项,以 A 开头的第 101 项等...
查询参数http://wiki.apache.org/solr/CommonQueryParameters有“rows”和“start”,但这些不能跳过项目,所以我需要用一个单独的查询来获取每个项目,这是低效的。我也在考虑实现一个过滤器查询,它只会过滤掉项目 2...99、192...199,但我不知道如何实现它。