总结
术语聚合(`terms aggregation`)是 Elasticsearch 中一种非常强大的聚合方式,用于根据字段值对数据进行分组和统计。它支持多种参数和配置选项,能够满足复杂的查询需求。以下是术语聚合的主要功能和注意事项的总结:
主要功能
1. 动态分桶:根据字段的唯一值动态创建分桶。
2. 排序:
• 默认按文档计数降序排序。
• 支持按术语值(`_key`)排序。
• 支持按子聚合结果排序(如最大值、最小值等)。
3. 过滤:
• 使用正则表达式(`include`和`exclude`)过滤术语。
• 使用精确值过滤术语。
• 使用分区(`partition`)处理大量唯一术语。
4. 性能优化:
• 使用全局序号(`global_ordinals`)优化性能。
• 支持延迟计算子聚合(`collect_mode`)以减少内存占用。
5. 错误处理:
• 提供文档计数误差上限(`doc_count_error_upper_bound`)。
• 支持显示术语文档计数误差(`show_term_doc_count_error`)。