Elasticarch(015):es常见的字段映射类型之数字类型(numeric)⽂章⽬录离开之后
简介
如何自制泡泡水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的范围类型。
注意事项
1. 尽量选择范围⼩的类型,提⾼搜索效率。
民办学校排名
2. 对于浮点数尽量⽤⽐例因⼦,⽐如⼀个价格字段,单位为元,我们将⽐例因⼦设置为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。使⽤⽐例因⼦的好处是整型⽐浮点型更易压缩,节省磁盘空间。
如果⽐例因⼦不适合,则从下表选择范围⼩的去⽤。