Elasticsearch 映射参数详解:定制字段的索引与检索行为
映射参数(Mapping Parameters)是 Elasticsearch 中用于定制字段行为的核心配置,通过这些参数可以控制字段的分词方式、数据处理、索引策略等,以适配不同的业务场景。以下是 6.8.x 版本中常用映射参数的详细解析。
analyzer:字符串分词器配置
analyzer 用于指定索引时处理字符串字段的分词器,决定如何将文本拆分为词项(Term)。查询时的分词器由 search_analyzer 或默认规则决定。
核心作用
- 定义字符串字段的分词逻辑(如中文分词、英文词干提取等)。
- 支持预定义分析器(如
standard、ik_smart)或自定义分析器。
分析器查找顺序
- 索引时:字段映射中定义的
analyzer→ 索引设置中的default分析器 → 标准分析器(standard)。 - 查询时:查询中指定的
analyzer→ 字段映射的search_analyzer→ 字段映射的analyzer→ 索引设置的default_search→ 索引设置的default→ 标准分析器。
配置示例(自定义分析器)
1 | PUT my_index |
注意
- 文本字段(
text)必须配置分析器,关键词字段(keyword)不分词,无需指定。 - 中文分词需依赖第三方插件(如 IK 分词器),并在
analyzer中指定(如ik_max_word)。
normalizer:关键词标准化器
normalizer 仅用于 keyword 类型字段,在索引前对字段值进行标准化处理(如大小写转换、特殊字符处理),确保精确匹配的一致性。