映射是 Elasticsearch 中一个非常重要的概念,因为它定义了搜索引擎应该如何处理文档及其字段。
搜索引擎执行以下两个主要操作:
- Indexing: This is the action to receive a document and to process it and store it in an index
- Searching: This is the action to retrieve the data from the index
这两个部分是严格连接的;索引步骤中的错误会导致不需要或丢失的搜索结果。
Elasticsearch 在索引级别上有显式映射。索引时,如果未提供映射,则创建默认映射,并从组成文档的数据字段中猜测结构。然后,此新映射会自动传播到所有集群节点。
默认类型映射具有合理的默认值,但是当您想要更改它们的行为或自定义索引的其他几个方面(存储、忽略、完成等)时,您需要提供新的映射定义。
在本章中,我们将研究构成文档映射的所有可能的映射字段类型。
本章将介绍以下食谱:
- Using explicit mapping creation
- Mapping base types
- Mapping arrays
- Mapping an object
- Mapping a document
- Using dynamic templates in document mapping
- Managing nested objects
- Managing a child document with a join field
- Adding a field with multiple mappings
- Mapping a GeoPoint field
- Mapping a GeoShape field
- Mapping an IP field
- Mapping an alias field
- Mapping a Percolator field
- Mapping feature and feature vector fields
- Adding metadata to a mapping
- Specifying a different analyzers
- Mapping a completion field