1

最近我开始学习弹性搜索,目前正在处理一些示例产品数据。现在我想建议用户输入产品。我已经检查了Completion Suggester的一些文档并实施了一些完成示例。

我检查了使用_suggest比使用普通_search的一些好处,例如

  • 速度
  • 即时的
  • 可读性
  • 定制订购

这是我尝试过的脚本:

`POST /products/_suggest
 {
  "product" : {
     "text" : "fres",
     "completion" : {
        "field" : "name"
       }
   }
 }`

但是现在,我想实现建议器,它将建议作为用户类型,带有产品图片和其他带有产品名称的选项,如添加到购物车等

我在 elasticsearch-rails gem over ruby​​ on rails 的帮助下实现了这一切。

那么我可以使用普通完成类型来执行此操作,因为它提供了很多搜索功能,否则普通搜索将适用于这种情况?

4

1 回答 1

0

弹性搜索(ES)允许“普通搜索”不允许的事情:扩展全文搜索结束尤其是模糊搜索(像“hoem”这样的错字无论如何都可以返回“home”......)。

但是 ES 查询只返回在 ES 中索引的数据!

您可能不会索引您的图片,因此您必须处理 ES 答案并生成带有图片的“漂亮”建议列表(ES 将返回带有 ES 和 ActiveRecord ID 的条目)

随时询问您是否需要更多详细信息

于 2016-11-08T15:33:55.290 回答