gpt4 book ai didi

elasticsearch - Elasticsearch Java API:用于文档计数的聚合过滤器

转载 作者:行者123 更新时间:2023-12-03 01:51:18 25 4
gpt4 key购买 nike

我想实现一个聚合,仅返回频率高于特定阈值的文档。

例如,这是获取所有文档及其计数的汇总

AggregationBuilder aggregation = AggregationBuilders
.terms("agg").field("column_name");

所以这给了我 column_name中每个值的文档计数
[{"doc_count":30,"key":"val1"},{"doc_count":29,"key":"val2"},{"doc_count":23,"key":"val3"}]

现在,让我说我不想要所有这些文件。我只希望 doc_count大于 25的那些

所以理想的结果是
[{"doc_count":30,"key":"val1"},{"doc_count":29,"key":"val2"}]
如何将这样的过滤器应用于汇总?我正在查看 FilterBuilders和过滤器聚合,但它们是用于对文档中的任何值应用过滤器的。例如,我可以应用过滤器以仅获取 val1 == xzacolumn_name的文档

但这不是我想要的。我想在应用聚合后为 doc_cunt值应用阈值。

这可能吗?我正在使用Elasticsearch Java API版本1.7.2

最佳答案

术语聚合具有一个内置选项min_doc_count。有关它们的文档,请参见here。我没有使用过Java API,但this example在示例中似乎使用了.minDocCount()(ctrl-f'minDocCount')

关于elasticsearch - Elasticsearch Java API:用于文档计数的聚合过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40155618/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com