Elasticsearch支持文档中字段的多种不一样数据类型:segmentfault
字符串数组
text
和keyword
数字app
long
、integer
、short
、byte
、double
、float
、half_float
、scaled_float
日期优化
date
日期纳秒code
date_nanos
布尔对象
boolean
二进制排序
binary
范围索引
integer_range
、float_range
、long_range
、double_range
、date_range
对象token
object
用于单个JSON对象嵌套ip
nested
用于JSON对象数组Geo-point
geo_point
表示lat/lon坐标点Geo-shape
geo_shape
用于复杂形状(如多边形)IP
ip
用于IPv4和IPv6地址完成数据类型
completion
提供自动完成建议令牌数
token_count
用于计算字符串中的令牌数量mapper-murmur3
murmur3
在索引时计算值的哈希值并将它们存储在索引中mapper-annotated-text
annotated-text
索引包含特殊标记的文本(一般用于标识命名实体)过滤器
链接
别名
排名功能
密集向量
稀疏向量
按类型搜索
在Elasticsearch中,数组不须要专用字段数据类型,默认状况下,任何字段均可以包含零个或多个值,可是数组中的全部值必须具备相同的数据类型。
为不一样的目的以不一样的方式索引相同的字段一般是有用的,例如,字符串字段能够映射为用于全文搜索的text
字段,以及用于排序或聚合的keyword
字段,或者,你能够使用标准分析器、英语分析器和法语分析器索引文本字段。
这就是多字段的目的,大多数数据类型经过fields
参数支持多字段。