在 Elasticsearch 中, 和 是处理字符串(String)数据的两种主要类型。它们的核心区别在于是否进行分词(Analysis)以及底层存储结构的不同,这也决定了它们各自适用的场景。 以下是详细的对比分析: 1. 核心区别总结表 | 特性 | Text 类型 | Keyword 类型 | | :--- | :--- | :--- | | 分词 (Analysis) | 会分词 (Analyzed)。会被解析器拆分成独立的词项 (tokens)。 | 不分词 (Not Analyzed)。作为一个整体存储。 | | 主要用途 | 全文检索 (Full-text search)。如搜索文章内容、产品描述。 | 精确匹配、过滤、排序、聚合。如 ID、状态码、标签、邮箱。 | | 查询方式 | 通常使用 查询。支持模糊匹配、相关性打分。 | 通常使用 查询。必须完全一致(包括大小写)。 | | 排序与聚合 | 不支持 (默认禁用 Fielddata,因为消耗大量堆内存)。 | 支持 (使用 Doc Values,性能高)。 | | 存储结构 | 倒排索引 (Inverted ...