Вот мое упругое отображение поиска:
"mappings": {
"_doc": {
"properties": {
"totalAmount": {
"type": "integer"
}
},
"dynamic_templates": [
{
"strings_as_longs": {
"match_mapping_type": "string",
"match": "*Amount",
"mapping": {
"type": "integer"
}
}
}
]
}
}
Цель - сохранить все поля, которые содержат сумму в качестве числа.После применения этого сопоставления к эластичному результату получается такой результат:
"totalAmount" : {
"type" : "integer"
}
Я отправляю данные в эластичный объект в формате JSON, но все числа представляются в виде строк:
"freeAmount": "10",
"totalAmount": "60"
После полученияУ меня есть эти числа также в виде строк.Это странно для меня, я думал, что эластичный должен преобразовать строки в числа перед сохранением, а затем дать мне их в виде чисел.Должен ли их преобразовать эластик или мне нужно преобразовать все необходимые данные перед сохранением в эластик?