随机抽样lucene 4

时间:2014-09-09 15:03:47

标签: lucene

我正在寻找从我的查询结果中获取一些随机样本的方法。 问题是它应该保留顺序,它应该可以用同一种子重复。 我尝试使用自定义过滤器,但它无法在一次调用中访问所有返回的文档。 在最糟糕的情况下,我将调用查询获取ID,从其数组中取样并再次使用额外的过滤器调用查询(问题是我需要在几个不同的地方,并且我有一个常见的方法来构建过滤器)

你有更好的主意吗?

此致

2 个答案:

答案 0 :(得分:1)

RandomSortField就是这么做的,所以如果你需要保持Lucene级别,你可以查看源代码,看看在Lucene之上捆绑所有需要的java代码是多么困难

答案 1 :(得分:0)

最后,我通过获取所有文档,创建id字段集合,对该数组进行采样以及将采样结果添加到主Lucene查询的过滤器来解决问题。并再次搜索结果。