Elasticsearch 可以支持单个 document 中含有多个不同的数据类型。
核心数据类型(Core datatypes)
- 字符型(String datatype):string
- 数字型(Numeric datatypes):long, integer, short, byte, double, float
- 日期型(Date datatype):date
- 布尔型(Boolean datatype):boolean
- 二进制型(Binary datatype):binary
复杂数据类型(Complex datatypes)
- 数组类型(Array datatype):数组类型不需要专门指定数组元素的type,例如:
- 字符型数组: [ "one", "two" ]
- 整型数组:[ 1, 2 ]
- 数组型数组:[ 1, [ 2, 3 ]] 等价于[ 1, 2, 3 ]
- 对象数组:[ { "name": "Mary", "age": 12 }, { "name": "John", "age": 10 }]
- 对象类型(Object datatype):_ object _ 用于单个JSON对象;
- 嵌套类型(Nested datatype):_ nested _ 用于JSON数组;
地理位置类型(Geo datatypes)
- 地理坐标类型(Geo-point datatype):_ geo_point _ 用于经纬度坐标;
- 地理形状类型(Geo-Shape datatype):_ geo_shape _ 用于类似于多边形的复杂形状;
特定类型(Specialised datatypes)
- IPv4 类型(IPv4 datatype):_ ip _ 用于IPv4 地址;
- Completion 类型(Completion datatype):_ completion _提供自动补全建议;
- Token count 类型(Token count datatype):_ token_count _ 用于统计做了标记的字段的index数目,该值会一直增加,不会因为过滤条件而减少。
-
mapper-murmur3
类型:通过插件,可以通过 _ murmur3 _ 来计算 index 的 hash 值; - 附加类型(Attachment datatype):采用 mapper-attachments
插件,可支持_ attachments _ 索引,例如 Microsoft Office 格式,Open Document 格式,ePub, HTML 等。
网友评论