2016-03-14 4 views
1

У меня есть анализатор с синонимамиElasticSearch многословных синонимов

{ 
    "settings": { 
    "analysis": { 
     "filter": { 
     "synonyms": { 
      "type": "synonym", 
     "synonyms": [ 
     "st,str,street",    
     "district of columbia,dc" 
     ] 
    } 
     }, 
     "analyzer": { 
     "synonyms": { 
      "tokenizer": "standard", 
      "filter": [ 
      "lowercase", 
      "synonyms" 
      ] 
     } 
     } 
    } 
    } 
} 

Если я запускаю анализ на «улице», это дает мне, что «улица» и «ули» являются синонимами.

Но если я бегу на «DC», это дает мне, что «район», «из» и «колумбия» являются синонимами.

Как создать синонимы «DC» и «District of Columbia»?

ответ

1

Обеспечить синонимы, как показано ниже:

"filter": { 
    "synonyms": { 
     "type": "synonym", 
     "synonyms": [ 
     "st,str,street",    
      "district of columbia,dc=>dc" 
     ] 
    } 
} 

Пожалуйста, проверьте reference для более подробной информации

+0

это половина помогли. Если я ищу «Нью-Джерси», он найдет «NJ», но если я найду «NJ», он не найдет «New Jersea» – nazarevic

+0

Вы попробовали переиндексировать документы после обновления настроек? – Rahul

+0

Не стесняйтесь принимать, если он решил вашу проблему – Rahul

Смежные вопросы