Используя Ingest API и процессор удаления , вы сможете решить эту проблему довольно просто, только с помощью вашего кластера эластичного поиска.Вы также можете смоделировать конвейер загрузки и результаты.
Я подготовил пример, который, вероятно, охватит ваш случай:
POST _ingest/pipeline/_simulate
{
"pipeline": {
"description": "remove id form incoming docs",
"processors": [
{"remove": {
"field": "id",
"ignore_failure": true
}}
]
},
"docs": [
{"_source":{"id":"123546", "other_field":"other value"}}
]
}
Видите ли, есть одинтестовый документ, содержащий поле "id".Это поле больше не присутствует в ответе / результате:
{
"docs" : [
{
"doc" : {
"_index" : "_index",
"_type" : "_type",
"_id" : "_id",
"_source" : {
"other_field" : "other value"
},
"_ingest" : {
"timestamp" : "2018-12-03T16:33:33.885909Z"
}
}
}
]
}