_updated_by_query для переиндексации документов эластичного поиска - PullRequest
0 голосов
/ 22 октября 2019

Мы используем эластичный поиск 5.5. Мы внесли некоторые изменения в отображение:

  1. Добавлены некоторые новые поля.
  2. Добавлен анализатор для некоторых полей.
  3. Удалены некоторые поля.
  4. Исключил некоторые существующие поля из _all.
  5. Удалил одну и ту же настройку анализатора из некоторых выходящих полей.

Вот что я понимаю: Для случаев 2 и 4 нам нужно выполнитьиндексирование, чтобы изменения вступили в силу.

Один из подходов, которые я узнал для выполнения повторной индексации, - это использование _update_query с конфликтами = продолжить.

Мне известны только другие способы:index API или нашли несколько подходов, которые не требуют простоя. Но если мы рассмотрим случай 2, где мы добавляем анализатор к существующим полям, насколько хорошей или плохой является идея использовать update_bu_query для выполнения переиндексации? Мы можем иметь десятки индексов со 100 тысячами документов в них.

Кроме того, _update_by_query работает на снимке? т.е. после запуска он продолжается только для активов, доступных в индексе на момент запуска? Что произойдет, если новые документы будут добавлены, когда этот запрос будет обрабатываться?

Поможет ли это эффективному делу 5? Удалит ли он проанализированные данные?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...