如果我正在搜索的文档(比如商家名称)中没有空格,用户通过在其中添加空格进行搜索,结果将不会显示在ElasticSearch中。如何改进以获得结果?例如:商户名称为“delibites”,用户通过键入“deli-bites”进行搜索,则上述商户不会出现在结果中。只有在我只键入“deli”或“deli”后跟空格或“deli”时,商家才会出现在建议中
qq24tv8q1#
我建议使用同义标记过滤器。https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-synonym-tokenfilter.htmlhttps://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-synonym-graph-tokenfilter.html你应该有一本字典,里面有你要搜索的所有单词。像这样:熟食店=>熟食店ipod=>i吊舱在实现同义词之前,一定要理解它的所有方面。https://www.elastic.co/blog/boosting-the-power-of-elasticsearch-with-synonyms
1条答案
按热度按时间qq24tv8q1#
我建议使用同义标记过滤器。
https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-synonym-tokenfilter.html
https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-synonym-graph-tokenfilter.html
你应该有一本字典,里面有你要搜索的所有单词。像这样:
熟食店=>熟食店
ipod=>i吊舱
在实现同义词之前,一定要理解它的所有方面。
https://www.elastic.co/blog/boosting-the-power-of-elasticsearch-with-synonyms