Elasticsearch总支持哪些数据类型?

Elasticsearch支持多种数据类型,包括分词的text和不分词的keyword字符串类型,各种数字类型如byte,integer,float等,日期,布尔值,二进制,范围类型以及数组,对象,嵌套,地理和IP等复杂数据类型。
摘要由CSDN通过智能技术生成

Elasticsearch总支持哪些数据类型?

在这里插入图片描述

String类型: 类似java中的String字符串,共分为text何keyword两种类型:

text:会分词,如果使用text类型储存,我们不去特殊定义它的分词器,那么ES就会使用默认的分词器 standard

在这里插入图片描述

keyword:不会分词

数字类型

类型说明
byte有符号的8位整数, 范围: [-128 ~ 127]
short有符号的16位整数, 范围: [-32768 ~ 32767]
integer有符号的32位整数, 范围: [−2^31 ~ 2^31-1]
long有符号的64位整数, 范围: [−2^63 ~ 2^63-1]
float32位单精度浮点数
double64位双精度浮点数
half_float16位半精度IEEE 754浮点类型
scaled_float缩放类型的的浮点数, 比如price字段只需精确到分, 57.34缩放因子为100, 存储结果为5734

日期 可以是:

  • 包含格式化日期的字符串, “2018-10-01”, 或"2018/10/01 12:10:30"
  • 代表时间毫秒数的长整型数字
  • 代表时间秒数的整数

** 布尔** 可以是表示真、假的字符串或数字:

  • 真值: true, “true”, “on”, “yes”, “1”…
  • 假值: false, “false”, “off”, “no”, “0”, “”(空字符串), 0.0, 0

二进制型 :二进制类型是Base64编码字符串的二进制值, 不以默认的方式存储, 且不能被搜索

范围类

类型说明
integer_range−2^31 ~ 2^31−1
long_range−2^63 ~ 2^63−1
float_range32位单精度浮点型
double_range64位双精度浮点型
date_range64位整数, 毫秒计时
ip_rangeIP值的范围, 支持IPV4和IPV6, 或者这两种同时存在

复杂数据类型

数组类型: ES中没有专门的数组类型, 直接使用[]定义即可; 数组中所有的值必须是同一种数据类型, 不支持混合数据类型的数组

对象类型: 文档可以包含内部对象, 内部对象也可以包含内部对象.

嵌套类型: 嵌套类型是对象数据类型的一个特例, 可以让array类型的对象被独立索引和搜索

地理数据类型

地理点类型,用于存储地理位置的经纬度对, 可用于:

  • 查找一定范围内的地理点;
  • 通过地理位置或相对某个中心点的距离聚合文档;
  • 将距离整合到文档的相关性评分中;
  • 通过距离对文档进行排序.

地理形状类型,存储多边形的复杂形状

特定类型

IP类型: IP类型的字段用于存储IPv4或IPv6的地址, 本质上是一个长整型字段

计数数据类型: token_count类型用于统计字符串中的单词数量. 本质上是一个整数型字段, 接受并分析字符串值, 然后索引字符串中单词的个数

自动补全类型:主要为查询建议提供能力

别名类型: 为索引中的一个字段定义了一个备用名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云哲-吉吉2021

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值