Elasticsearch синонимы не дают результатов - PullRequest
0 голосов
/ 29 августа 2018

У меня есть следующий конфиг для определения моего синонима:

{
"settings": {
    "analysis": {
        "analyzer": {
            "synonymanalyzer_disease": {
                "tokenizer": "standard",
                "filter": ["lowercase", "locationsynfilter"]
            }
        },
        "filter": {
            "locationsynfilter": {
                "type": "synonym",
                "synonyms": ["Alzheimers disease,presenile dementia,senile psychosis,dementia ,Alzheimer => Alzheimer's disease"]
            }
        }

    }

},
"mappings": {
    "testtype": {
        "properties": { 
            "indication": {
                "type": "string",
                "analyzer": "synonymanalyzer_disease"
            }
        }
    }
}

}

Я создал индекс эластичного поиска на основе базы данных postgreSQL

Я потратил много часов, пытаясь выяснить, почему я не могу получить какие-либо результаты для синонимов, запрос, который я использую:

curl -XGET "localhost: 9200 / Studies / _search" -H "Тип содержимого: application / json" -d "{\" query \ ": {\" match \ ": {\" индикация \ ": \ "деменция \"}}}

И я получаю 0 результатов.

Я новичок в Elasticsearch, есть ли хорошие советы о том, как мне отладить эту проблему? и как я могу проверить / проверить, были ли синонимы применены к моему индексу, я использовал следующий запрос для анализа токенов:

curl -XGET "localhost: 9200 / Studies / _analyze" -H "Тип содержимого: application / json" -d "{\" analyzer \ ": \" synonymanalyzer_disease \ ", \" text \ ": \" это размерность \ "}"

...