前言 在很多搜索场景中,我们希望能够搜索出搜索词相关的目标,同时也希望能搜索出其近义词相关的目标。例如在商品搜索中,搜索“瓠瓜”,也希望能够搜索出“西葫芦”,但“西葫芦”商品名称因不含有“瓠瓜”,导致无法搜索出来。 此时就需要将“瓠瓜”解析成“瓠瓜”和“西葫芦”,es的synonym,synonym gragh过滤器就是提供了该功能,将词转为近义词再分词。 如下,声明了一个将“瓠瓜”和“西葫芦”定义为近义词的分词器 // 定义自定义分词 PUT info_goods_v1/_settings { "analysis": { "filter": { "my_synonyms": { "type": "synonym_graph", "synonyms": [ "瓠瓜,西葫芦" ] } }, "analyzer": { "my_analyzer": { "type": "custom", "tokenizer": "ik_max_word", "filter": [ "lowercase", "my_synonyms" ] } } } } // 使用“瓠瓜”分词 GET...