一、ES 索引的映射和设置

1.MAPPING

映射(MAPPING)就是es中一个决定了文档如何存储,如何生成索引,字段各种类型定义的过程.类似于我们在关系型数据库中创建一个表格数据之前先定义表格有哪些字段,每个字段是什么类型,然后数据会按照这个配置写入表格,ES中同样是这个过程,它由两种映射组成.一个是动态映射(dynamic mapping),一个是静态映射(explicit mapping).各自都具备各自的长处和短处,比如动态映射使得我们索引数据的时候很方便,静态映射是当我们想特指一些特殊的,或者需求需要的结构时使用.

注意:从7.0开始,es中将逐渐删除type类型的概念,所以和7.0之前的版本设置mapping有区别,不在添加自定义类型,到了8.0就会彻底消失.

1.1Dynamic Mapping(动态映射)

动态映射允许您在刚刚开始时就对数据进行试验和研究。Elasticsearch通过索引文档自动添加新字段。您可以向顶级映射、内部对象和嵌套字段添加字段。

总的来讲,使用dynamic mapping你不需要做任何修改和操作,都是默认的.

  • 查询一个mapping

当我们创建一个索引之后,在索引中随意添加一个数据,都会自动生成mapping映射.

[root@localhost ~]# curl -XPUT http://192.168.0.0:9200/index02?pretty -H 'Content-Type:application/json'

创建完这个索引我们来查看一下mapping.

[root@localhost ~]# curl