Я хочу переиндексировать данные из существующего индекса в облаке приложений Swisscom в новый (необходимо внести коррективы в сопоставление). Я видел, что начиная с версии 2.3.0 есть API переиндексации. Но так как версия elasticsearch в appcloud — 2.1.0, я понятия не имею, как переиндексировать мои данные. Есть ли у вас какие-либо предложения, как действовать? И будет ли в ближайшем будущем обновление elasticsearch?
Переиндексация в elasticsearch v2.1.0 в облаке приложений Swisscom
comment
Извините, отредактировал мой вопрос. Думал, что, поскольку я использовал наш тег разработчика, я мог бы это сделать.
- person PouletFreak   schedule 18.08.2017
Ответы (1)
Документ в elasticsearch неизменяем. Переиндексация документа состоит из следующих шагов:
- Получите JSON (который вы хотите переиндексировать)
- Измени это
- Удалить старый документ
- Индексировать новый документ
В вашем случае вы хотите переиндексировать весь свой индекс, поэтому я предлагаю вам использовать API сканирования, чтобы получить все ваши старые документы и переиндексировать их в новый индекс: Сканировать документацию API для переиндексации.
person
mel
schedule
17.08.2017
Спасибо за ответ! Я написал простой скрипт на Python для извлечения моих данных с помощью API get, и теперь я могу снова проиндексировать его в новый. Я думаю, что API сканирования недоступен в ES версии 2.1, но я думаю, что он работает с моим подходом!
- person PouletFreak; 18.08.2017
Вы должны обновить свой ES, много интересных функций было реализовано!
- person mel; 18.08.2017
Я бы с удовольствием, но я использую службу ELK в облаке приложений, поэтому я не могу влиять на обновления. Локально работаю с v5.5!
- person PouletFreak; 18.08.2017