可以把索引理解为一组记录,文档是其中一条 JSON 记录,而映射规定如何解释记录中的字段。
从一个商品开始
json
{"name":"Blue shoes","price":120,"created_at":"2026-09-20"}
这个文档属于 索引。其映射可以把 声明为可搜索文本,把 声明为数值,把 声明为日期。
可以把索引理解为一组记录,文档是其中一条 JSON 记录,而映射规定如何解释记录中的字段。
{"name":"Blue shoes","price":120,"created_at":"2026-09-20"}
这个文档属于 索引。其映射可以把 声明为可搜索文本,把 声明为数值,把 声明为日期。
一个包含详细解答的 IT 面试题库——从初级到高级。
捐赠productsnamepricecreated_at假设要查找价格低于 200 的商品。数值型 price 让 Elasticsearch 按数字比较。字符串表示用于不同的比较方式,不能很好地替代数值范围查询。
因此,同样的输入也需要根据所需搜索方式选择映射。仅有 JSON 并不能描述所有索引行为。
动态映射会在数据到达时自动推断字段。这适合探索阶段,但早期的意外值可能确定一个不合适的类型。对已知生产字段明确声明,并控制任意新增字段名。
新增字段与改变已有字段类型并不相同。后者通常需要创建新索引,并通过 reindex 将文档复制过去。
官方文档.