# Поиск с морфологией и без

**URL:** https://discuss.elastic.co/t/topic/115538
**Category:** Вопросы на русском языке
**Created:** [January 15, 2018, 12:16pm UTC](https://discuss.elastic.co/t/topic/115538 "2018-01-15T12:16:08Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Vivaldy](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vivaldy/32/26511_2.png) [@Vivaldy](https://discuss.elastic.co/u/Vivaldy)
#### Post date: [January 15, 2018, 12:16pm UTC](https://discuss.elastic.co/t/topic/115538/1 "2018-01-15T12:16:08Z")

</div>

Elasticsearch настроил, за что огромное спасибо. Сейчас изучаю анализаторы, маппинг. Возник вопрос - прочитал про проблемы с suggestions поиском и морфологией когда документ в индексе: "Катя разговаривает" не находится при вводе фразы "Катя разгов" так как морфологический фильтр преобразовал "разговаривает" -\> "говорить" и потому рекомендуют хранить оба варианта (преобразованный и не преобразованный).  
Решение этого вопроса я увидел следующим образом:

1. применение токенайзера nGram, но он в купе с морфологией начинает давать очень странные результаты. То есть если токенайзер я ставлю так:

> 'my\_index' =\> [  
> 'type' =\> 'custom',  
> 'tokenizer' =\> 'my\_nGram',  
> 'filter' =\> ['lowercase', 'custom\_word\_delimiter', 'my\_stopwords', 'russian\_morphology']  
> ],  
> то веселые истории выдает на запрос о веслах

если так:

> 'my\_index' =\> [  
> 'type' =\> 'custom',  
> 'tokenizer' =\> 'standart',  
> 'filter' =\> ['lowercase', 'custom\_word\_delimiter', 'my\_stopwords', 'russian\_morphology', 'my\_nGram']  
> ],  
> то уже лучше, но все равно меня это, что-то смущает

1. второй вариант который я вижу это сделать два анализатора в одном подключить морфологию, в другом не подключать. После чего в запросе склеивать поиск по этим полям с одинаковым boost-ом (как сделать одно поле с идексами и с морфологией и без я не понял пока что, может возможно как-то?)  
Плюс к тому, получается, что при том - если я хочу чтоб отдельное слово " **разговаривает** с.." мело больший вес чем часть слова " **разгов** аривает с..." и было выше в результатах то мне получается уже надо делать 4 запроса лишь по одному полю. С одной стороны не проблема, с другой стороны когда полей много - запрос разрастается невероятно - не будет ли это в последствии сильно тормозить?

Подскажите как лучше делать? возможно ли сформировать индекс с морфологией и без вместе. а не клеить? Извиняюсь если это тривиально, я недавно стал разбираться.

Заранее спасибо.

---

<div class="post-metadata">

### Author: ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)
#### Post date: [January 15, 2018, 3:28pm UTC](https://discuss.elastic.co/t/topic/115538/2 "2018-01-15T15:28:07Z")

</div>

Этот вопрос в форуме периодически возникает. Последний раз мы [тут](https://discuss.elastic.co/t/topic/104899/2?u=igor_motov) об этом говорили.

---

<div class="post-metadata">

### Author: ![Vivaldy](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vivaldy/32/26511_2.png) [@Vivaldy](https://discuss.elastic.co/u/Vivaldy)
#### Post date: [January 17, 2018, 2:06pm UTC](https://discuss.elastic.co/t/topic/115538/3 "2018-01-17T14:06:44Z")

</div>

Спасибо, вроде выбрал подходящий вариант

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [February 14, 2018, 2:06pm UTC](https://discuss.elastic.co/t/topic/115538/4 "2018-02-14T14:06:48Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
