У меня есть устройство IoT, которое выводит данные в этом формате:
{
"host": "edison",
"timestamp": 1560755080091,
"fahrenheit": 72.824,
"humidity": 51.746
}
Я могу записать это в индекс Elastic (v 6.7.2), который я создал с помощью следующих сопоставлений:
PUT temperature-humidity
{
"mappings": {
"temperature_humidity": {
"properties": {
"host": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"timestamp": {
"type": "date",
"format": "epoch_millis"
},
"fahrenheit": {
"type": "float"
},
"humidity": {
"type": "float"
}
}
}
}
}
У меня также есть экземпляр InfluxDB, который ожидает, что записи будут отформатированы следующим образом:
{
"measurement": "temperature-humidity",
"tags": {
"host": "edison"
},
"fahrenheit": 72.824,
"humidity": 51.746
}
Если возможно, я бы хотел избежать двух разных форматов данных.
Если я настроил устройство для вывода данных в формате InfluxDB, есть ли способ для Elastic преобразовать данные в «плоский» формат при поступлении записей?Или мне нужно сделать трансформацию вне Elastic?