如何在elasticsearch中聚合和搜索相同的字段?

时间:2016-01-19 04:40:29

标签: elasticsearch

我制作了要进行聚合的字段作为" not_analyzed"。但现在搜索不在该领域。 如何在现场进行聚合并进行搜索?

1 个答案:

答案 0 :(得分:2)

您只需将您的字段映射为string multi field,其中包含已分析的部分(用于搜索)和未分析的部分(用于聚合)。基本上是这样的:

{
    "my_field": {
        "type": "string",
        "fields": {
            "raw": {
                "type": "string",
                "index": "not_analyzed"
            }
        }
    }
}

然后,您的查询将在my_field字段中进行搜索,并在my_field.raw子字段上进行汇总。