1
我們可以在elasticsearch中平等地評分原始字符串和同義詞嗎?在Elasticsearch中同等評分同義詞
例如,我創建了同義詞文件爲:
PVT,私人
有限公司,有限
我創建使用同義詞象徵過濾器的索引。然後我索引的兩個文件:
curl -XPOST "http://localhost:9200/test1/test?pretty" -d
'{ "entityName" : "ABC International Pvt Ltd"}'
curl -XPOST "http://localhost:9200/test1/test?pretty" -d
'{ "entityName" : "ABC International Private Limited"}'
現在,當我搜索「ABC國際私人有限公司」,其總分第一文檔爲1.15和第二文檔0.57。
有沒有辦法同等對待同義詞?
使用下列設置創建索引:
curl -XPUT 'localhost:9200/test1?pretty' -H 'Content-Type: application/json' -d'
{
"settings" : {
"index" : {
"analysis":{
"analyzer":{
"my_analyzer":{
"tokenizer":"standard",
"filter":["asciifolding", "standard", "lowercase", "my_metaphone", "synonym"]
}
},
"filter":{
"my_metaphone":{
"type":"phonetic",
"encoder":"metaphone",
"replace":false
},
"synonym" : {
"type" : "synonym",
"synonyms_path" : "synonyms.txt",
"ignore_case" : "true"
}
}
}
}
}
}'
你能說明如何定義索引的設置和映射嗎? – Val
有沒有可能你有一個很少有文件的多分片索引?如果是這樣,請嘗試使用單個分片索引。評分發生在碎片級別,所以如果你沒有很多文檔,你會得到奇怪的結果。 – dshockley