Я новичок вasticsearch, так что это может быть что-то простое, но я не могу заставить синонимы работать правильно.
мой индекс загружается и работает нормально
PUT /my-index
{
"settings" : {
"index" : {
"analysis" : {
"analyzer" : {
"synonym" : {
"tokenizer" : "whitespace",
"filter" : ["lowercase", "synonym_filter"]
}
},
"filter" : {
"synonym_filter": {
"type": "synonym",
"format": "wordnet",
"synonyms_path": "analysis/wn_s.pl",
"filter": ["lowercase"]
}
}
}
}
},
"mappings": {
"doc": {
"properties": {
"field_name": {
"type": "text",
"analyzer": "synonym",
"fields": {
"exact": {
"type": "text",
"analyzer": "synonym"
}
}
}
}
}
}
}
Один разЯ проверяю свои токены, возвращенные мной, я получаю несколько дополнительных.
GET my-index/_analyze
{
"analyzer" : "synonym",
"text" : "kid"
}
{
"tokens" : [
{
"token" : "child",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 0
},
{
"token" : "kid",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 0
},
{
"token" : "fry",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 1
},
{
"token" : "kyd",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 1
},
{
"token" : "kid",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 1
},
{
"token" : "the",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 1
},
{
"token" : "leg",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 2
},
{
"token" : "of",
"start_offset" : 0,
"end_offset" : 3,
"type" : "SYNONYM",
"position" : 3
}
]
}
в поисках документов
GET my-index/doc/_search
{
"query": {
"simple_query_string": {
"fields": [ "field_name" ],
"query": "kid"
}
}
}
вот некоторые результаты, которые я получаю
{<br>
"took":25,
"_shards":{<br>
"total":5,
"successful":5
},
"hits":{<br>
"total":5035,
"hits":[<br>
{<br>
"field_name":"CHILD WITNESS CENTRE"
},
{<br>
"field_name":"KidsAbility Centre for Child Development"
},
{<br>
"field_name":"Kamloops Child Development Centre"
},
{<br>
"field_name":"The Child Advocacy Centre Of Niagara"
},
{<br>
"field_name":"Kidsability Centre For Child Development"
},
{<br>
"field_name":"Child Witness Centre Of Waterloo Region"
},
{<br>
"field_name":"Branch 133, Legion Village Foundation"
},
{<br>
"field_name":"Society Of St Vincent De Paul St Thomas C"
},
{<br>
"field_name":"OSNS CHILD DEVELOPEMENT CENTRE"
},
{<br>
"field_name":"Caledon Parent Child Centre"
},
{<br>
"field_name":"University of Calgary"
}
]
}
}
asticsearch v6.5.2.Файл синонимов, который я взял с сайта wordnet