索引的mappings定义了文档的每个字段的数据类型:声明一个变量为String类型的字段,此字段只能存储String类型的数据。同语言的数据类型相比,mappings还有一些其他的含义,ElasticSearch不仅可以根据mappings判断一个字段中是什么类型的值,还可以根据mappings来索引数据以及判断数据能否被搜索到。
接下来可以通过Postman工具查看刚才创建的productindex索引的mappings信息。如图15-4所示。
由于ElasticSearch中只创建了一个productindex索引,所以mappings的内容为空。接下来为productindex索引增加一个product类型,product类型中含有productName、price、brand、createTime四个字段。mappings定义字段用properties关键词,里面的type有以下几种类型,见表15-2。
图15-4 获取mappings信息
表15-2 mappings中的数据类型
例如,请求url为http://39.106.208.144:9200/productindex/product/_mapping?pretty[16],以post方式请求,请求体为Json,具体内容如下,效果如图15-5所示。
(www.xing528.com)
mappings支持再次添加字段操作,按照上面的格式,在请求体中添加要增加的字段以及类型即可,但是不支持修改已增加索引的字段类型。例如修改price类型由double类型变成String类型,发送请求如图15-6所示。
图15-5 创建product类型
图15-6 修改字段类型
返回结果如下:
通过结果可以看到映射是不支持修改字段类型的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。