Elasticsearch自带的数据类型是Lucene索引的依据,也是我们做手动映射调整到依据。 映射中主要就是针对字段设置类型以及类型相关参数。
1.JSON基础类型如下:
字符串:string
数字:byte、short、integer、long、float、double
时间:date
布尔值: true、false
数组: array
对象: object
2.Elasticsearch独有的类型:
多重: multi
经纬度: geo_point
网络地址: ip
堆叠对象: nested object
二进制: binary
附件: attachment
3.复合类型:
数组类型:没有明显的字段类型设置,任何一个字段的值,都可以被添加0个到多个,要求,他们的类型必须一致
对象类型:存储类似json具有层级的数据
嵌套类型:支持数组类型的对象Aarray[Object],可层层嵌套
4.地理类型:
geo-point类型: 支持经纬度存储和距离范围检索
geo-shape类型:支持任意图形范围的检索,例如矩形和平面多边形
5.专用类型:
ipv4类型:用来存储IP地址,es内部会转换成long存储
completion类型:使用fst有限状态机来提供suggest前缀查询功能
token_count类型:提供token级别的计数功能
mapper-murmur3类型:安装sudo bin/plugin install mapper-size插件,可支持size统计source数据的大小