Посмотрите на документацию NEST для настройки встроенного анализатора для индекса .
Документация для english
анализатора просто демонстрирует, какВы можете переопределить анализатор english
самостоятельно, как пользовательский анализатор, со встроенными компонентами анализа, если вам нужно настроить какую-либо часть анализа.Если вам не нужно это делать, просто используйте english
в качестве имени для анализатора для поля
client.CreateIndex("my_index", c => c
.Mappings(m => m
.Map<POCO>(mm => mm
.AutoMap()
.Properties(p => p
.Text(t => t
.Name(n => n.MyProperty)
.Analyzer("english")
)
)
)
)
);
Будет использоваться встроенный анализатор english
для поля MyProperty
наPOCO
.
Анализатор english
не будет выполнять автоматическое расширение синонимов для вас, вам необходимо настроить синонимы, соответствующие вашей проблеме поиска.У вас есть два варианта в отношении синонимов
- Выполнить расширение синонимов во время индекса на входе индекса.Это приведет к более быстрому поиску за счет относительно фиксированного подхода.
- Выполнение раскрытия синонимов во время запроса на входе запроса.Это приведет к более медленному поиску, но дает возможность более легко добавлять новые сопоставления синонимов по мере необходимости.
Вы всегда можете воспользоваться подходом использования обоих, то есть индексирования синонимов.вы ожидаете, что они будут иметь отношение к вашему варианту использования поиска и добавлению новых синонимов во время запроса, так как вы обнаружите, что они соответствуют вашему варианту использования.