我试图找出一种在ElasticSearch中找到最受欢迎的术语及其用法的方法。 Terms Aggregation非常接近,但会返回该术语出现的文档数,而不是该术语出现的次数。
例如,假设已创建适当的索引来索引这些示例文档:
{ text: 'one two two' }
{ text: 'two three' }
然后执行以下搜索:
{
aggregations: {
popular_terms: {
terms: {
field: 'text'
}
}
}
}
将返回:
... {
buckets: [
{ key: 'two', value: 2 },
{ key: 'one', value: 1 },
{ key: 'three', value: 1 }
]
}
是否可以以类似的方式使用聚合计数术语实例进行搜索?因此,在此示例中,返回3
作为值'two'
,因为它在第一个文档中出现两次?