Link Search Menu Expand Document Documentation Menu

数值字段类型

下表列出了 OpenSearch 支持的所有数值字段类型。

字段数据类型 描述
字节 (byte) 一个有符号的 8 位整数。最小值为 -128。最大值为 127。
双精度浮点型 一个双精度 64 位 IEEE 754 浮点值。最小量级为 2−1074 。最大量级为 (2 − 2−52) · 21023。有效位数为 53。有效数字为 15.95。
浮点型 一个单精度 32 位 IEEE 754 浮点值。最小量级为 2−149 。最大量级为 (2 − 2−23) · 2127。有效位数为 24。有效数字为 7.22。
半浮点 (half_float) 一个半精度 16 位 IEEE 754 浮点值。最小量级为 2−24 。最大量级为 65504。有效位数为 11。有效数字为 3.31。
整型 一个有符号的 32 位整数。最小值为 −231。最大值为 231 − 1。
长整型 (long) 一个有符号的 64 位整数。最小值为 −263。最大值为 263 − 1。
无符号长整型 (unsigned_long) 一个无符号的 64 位整数。最小值为 0。最大值为 264 − 1。
短整型 (short) 一个有符号的 16 位整数。最小值为 −215。最大值为 215 − 1。
缩放浮点型 (scaled_float) 一个浮点值,它被双精度比例因子乘以并存储为长整型值。

整数 (Integer)、长整型 (long)、浮点型 (float) 和双精度 (double) 字段类型具有相应的范围字段类型

如果您的数值字段包含像 ID 这样的标识符,您可以将此字段映射为关键字 (keyword),以优化更快的词项级别查询。如果需要在此字段上使用范围查询,除了关键字字段类型外,您还可以将此字段映射为数值字段类型。

示例

创建一个映射,其中 integer_value 是一个整数字段

PUT testindex 
{
  "mappings" : {
    "properties" :  {
      "integer_value" : {
        "type" : "integer"
      }
    }
  }
}

索引一个包含整数值的文档

PUT testindex/_doc/1 
{
  "integer_value" : 123
}

缩放浮点字段类型

缩放浮点字段类型是一个浮点值,它被比例因子乘以并存储为长整型值。它接受数值字段类型的所有可选参数,外加一个额外的 scaling_factor 参数。创建缩放浮点型时,比例因子是必需的。

缩放浮点型对于节省磁盘空间很有用。scaling_factor 值越大,精度越好,但空间开销也越大。

缩放浮点型示例

创建一个映射,其中 scaled 是一个 scaled_float 字段

PUT testindex 
{
  "mappings" : {
    "properties" :  {
      "scaled" : {
        "type" : "scaled_float",
        "scaling_factor" : 10
      }
    }
  }
}

索引一个包含 scaled_float 值的文档

PUT testindex/_doc/1 
{
  "scaled" : 2.3
}

scaled 值将存储为 23。

参数

下表列出了数值字段类型接受的参数。所有参数都是可选的。

参数 描述
提升 一个浮点值,指定此字段对相关性得分的权重。高于 1.0 的值会增加字段的相关性。介于 0.0 和 1.0 之间的值会降低字段的相关性。默认值为 1.0。
强制转换 (coerce) 一个布尔值,表示是否截断整数值的小数部分并将字符串转换为数值。默认值为 true
文档值 (doc_values) 一个布尔值,指定字段是否应存储在磁盘上,以便用于聚合、排序或脚本编写。默认值为 true
忽略畸形值 (ignore_malformed) 一个布尔值,指定是否忽略畸形值而不抛出异常。默认值为 false
索引 (index) 一个布尔值,指定字段是否可搜索。默认值为 true
元数据 (meta) 接受此字段的元数据。
空值 (null_value) 一个用于替换 null 的值。必须与字段类型相同。如果未指定此参数,则当值为 null 时,该字段将被视为缺失。默认值为 null
存储 一个布尔值,指定字段值是否应存储且可与 _source 字段单独检索。默认值为 false

缩放浮点型有一个额外的必填参数:scaling_factor

参数 描述
比例因子 (scaling_factor) 一个双精度值,它与字段值相乘并四舍五入到最近的长整型。必填。

相关文章

剩余 350 字符

有问题?

想做贡献?