我遇到的问题是某些文档被索引了两次或更多,因此我想在搜索时过滤掉这些重复项。我跟着其他一些线程构建了这个查询:
{
"query" : { ... },
"size" : 10,
"from" : 0,
"sort" : { ... },
"aggs" : {
"dedup" : {
"terms" : {
"field" : "content.keyword"
},
"aggs" : {
"dedup_docs" : {
"top_hits" : {
"size" : 1
}
}
}
}
}
}
但似乎这种聚合没有效果。我仍然得到重复的结果(内容字段中包含相同文本的文档)。
请求已更改:
{
"query" : { ... },
"size" : 10,
"from" : 0,
"sort" : { ... },
"collapse" : {
"field" : "content.keyword"
}
}