通过Elasticsearch结果分页时出现重复内容

时间:2018-06-20 19:02:12

标签: elasticsearch nest

我有3个数据节点,2个主节点,并导入了大量文本内容。我写了一些查询来获取搜索数据,但获得分页的搜索结果是从上一页返回了一些重复的结果。 (很少有第1页的结果显示在第2页上,第2页的结果在第3页上重复,依此类推)。

这是我的NEST查询,我不确定要更改哪些内容才能在浏览新页面时仅获得唯一的结果。

                mediaResponse = elastic.Search<Articles>(s => s
                                                           .Explain(true)
                                                           .Pretty(true)
                                                           .Human(true)
                                                           .Index(mediaIndexName)
                                                           .Type(mediaTypeName)
                                                           .From(pageNumber)
                                                           .Size(numResults)
                                                           .Query(q => q
                                                                        .Match(m => m
                                                                                     .Field(new Field("content", null)).Query(queryTxt)
                                                                              )
                                                                 )
            );

关于如何正常工作的任何想法?

1 个答案:

答案 0 :(得分:0)

正如评论中指出的那样,不同的分片可能对同一文档的排名不同,从而在不同页面上返回该文档。尝试添加Preference参数,以确保多页给定结果集的一致性。