Может ли ElasticSearch «объяснить» параметр поиска, который будет использоваться для всех запросов, но не для отладки?

Я хотел бы получить информацию о том, какие именно термины соответствуют поисковому запросу.

Я обнаружил, что эта проблема обсуждалась в следующей теме: https://github.com/elastic/elasticsearch/issues/17045, но не была решена, « поскольку было бы слишком громоздким и дорогим хранить эту информацию » (внутри Контекст ElasticSearch).

Затем я обнаружил, что, используя опцию «объяснить» в поисковом запросе, я получаю подробную информацию о расчете оценки, включая соответствующие термины.

Я сделал какой-то тест производительности, чтобы сравнить поисковые запросы с параметром объяснения, установленным в true, и без параметра объяснения. И этот тест не показывает значительного влияния использования опции объяснения.

Вот мне и интересно, можно ли эту опцию использовать для производственной системы? Это похоже на какое-то обходное решение, но кажется, что оно работает.

Какие-либо соображения по этому поводу?

Всего 1 ответ


Прежде всего, вы не включили детали своего теста производительности, поэтому очень сложно узнать и сказать, повлияет ли это на производительность или нет, и опять же, это относительно:

  1. Какова конфигурация вашего кластера, общее количество узлов, размер, сегменты, реплики, JVM, нет документов, размер документов?
  2. Конфигурация индекса, т. Е. Для какого индекса вы используете API объяснения, опять же, это готовый индекс или индекс с высокой интенсивностью записи, сколько документов, в пиковое время, как он работает и т. Д.

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

Я много работал с поисковыми системами, и я часто использую объяснение API, но только по образцам, а не по всем запросам, и никогда не видел, чтобы это происходило.

РЕДАКТИРОВАТЬ: - Пожалуйста, посмотрите на именованные запросы, которые также могут быть использованы, чтобы проверить, какая часть ваших запросов соответствует результатам поиска и больше информации на этом официальном блоге


Есть идеи?

10000