概述
映射是定义如何索引和存储文档和字段的过程,例如:
- 定义字段类型,哪些字段作为全文索引,哪些字段是数值、日期类型
- 定义日期字段的格式
- 控制动态添加字段的映射的自定义规则
字段类型
- 字符串类型:
(1)text:通常用来存储长文本字段,例如博客标题、内容。通过定义analyzer,实现分词索引。
(2)keyword:不分词的字符串类型,存什么就是什么。 - 数值类型:long、integer、short、byte、double、float
- 日期类型:date
- 布尔类型:boolean
- 复合类型:
(1)object:包含一个子对象
(2)nested:包含一个或多个子对象 - 地理类型:geo_point
- 其他特定类型:ip、completion、join、alias等等
防止映射爆炸
对一个索引定义过多的字段时,可能会导致映射爆炸。也就是说,它将耗费大量的内存空间,甚至是内存溢出报错。为了防止这种情况出现,可以设置以下的属性值:
属性 | 说明 |
---|---|
index.mapping.total_fields.limit | 设置一个索引最多允许有多少字段, |