Подтвердить что ты не робот

Elasticsearch: когда установить опцию omit_norms как false

Что является хорошим вариантом использования опции omit_norms в elasticsearch? Я не мог найти адекватного объяснения на веб-сайте.

4b9b3361

Ответ 1

Нормы - это значение, хранящееся в индексе вместе с полем и используемое для подсчета очков. С алгоритмом оценки по умолчанию это объединяет lengthNorm (который служит для взвешивания коротких полей более тяжелыми, чем длинные), и любые повышения на уровне поля. Подробнее об этом можно узнать в документации Lucene.

Аспект LengthNorm в основном полезен для правильных полных текстовых полей. В более структурированных полях, в которых вам не нужно повышать поле, вы можете спокойно их опустить.

Ответ 2

Нормы включены по умолчанию для всех проанализированных полей, поскольку они используются для подсчета очков. Говоря простыми словами, они делают более короткие поля более высокими, чем более длинные. Всякий раз, когда кто-то не хочет этого или не хочет, чтобы поле вносило вклад в _score, можно было бы отключить нормы.

Начиная с версии Elastic 2.0, вы можете добавить "norms": { "enabled": false } при определении поля в отображении.

Для таких случаев, как регистрация, нормы не являются полезными.

Более подробную информацию можно найти в этой статье в эластичном руководстве