简介
es
支持一下long, integer, short, byte, double, float, half_float, scaled_float
常见的数字类型。
示例
#给example索引添加字段映射,默认docs类型
PUT example/docs/_mapping
{
"properties": {
"id":{
"type":"long"
},
"name":{
"type":"keyword"
},
"age":{
"type":"integer"
},
"remark":{
"type":"text"
}
}
}
其中的age使用是integer的范围类型。
注意事项
-
尽量选择范围小的类型,提高搜索效率。
-
对于浮点数尽量用比例因子,比如一个价格字段,单位为元,我们将比例因子设置为100这在ES中会按分存储,映射如下。
{
"price": {
"type": "scaled_float",
"scaling_factor": 100
}
}
注意: scaling_factor属性是只针对
scaled_float
这个数据类型才有,不要在其他类型上使用此属性。
由于比例因子为100,如果我们输入的价格是23.45则ES中会将23.45乘以100存储在ES中。如果输入的价格是23.456,ES会将23.456乘以100再取一个接近原始值的数,得出2346。使用比例因子的好处是整型比浮点型更易压缩,节省磁盘空间。
如果比例因子不适合,则从下表选择范围小的去用。
转载:https://blog.csdn.net/weixin_39723544/article/details/104331885
查看评论