我想知道哪个搜索引擎最适合以下用例?
我们有一个应用程序可以抓取来自不同平台的广告。用户可以使用searches
和其他过滤器属性(价格,位置等)添加keyword
。当我们收到新广告时,我们希望找到与广告标题匹配的所有searches
。
假设您的广告标题如下:
I want to sale Iphone 7 plus, 16GB, black, 9/10
并使用此标题查询搜索集合。
现在假设您使用以下关键字进行此搜索:
Iphone 7 16GB
Iphone 8 plus
Iphone 7 black 32GB
Iphone 7
主要目标是仅匹配:1
和4
搜索。因为2
和3
有advert
标题中没有的单词。
无论您将使用哪种搜索引擎(Algolia,Elastic ......),它们都将允许您执行此类限制性请求。
对于Elasticsearch,您将使用带有match
and
的operator
子句,并且基本标准分析器将起作用。
Elasticsearch中还有一个功能,允许您存储请求(即您的用户关键字)并向其投放文档(广告)以获取匹配的请求列表。这被称为Percolator。