phper 关于搜索的问题。

2022-02-23 18:16:55 +08:00
 gyinbj
phper 关于搜索的问题。

想了好几天,想不通有效的解决方案。

想实现 搜索 [冲锋衣]


显示固定筛选类

1:品牌 凯乐石 诺诗兰 ==
2:分类 男装 女装 ==
3:尺码 L XL ==


搜索结果 [冲锋衣] 产品包含的特定属性
例如
材料:xxx
季节:xxx
颜色:xxx 产品配置的个性化属性

问题就是怎样将[冲锋衣]产品配置的个性化属性聚合出来

目前用的 xunsearch 搜索引擎

es 刚刚接触不久 但是没有想通解决思路。

就是类似京东 淘宝的搜索结果 聚合

高人指点一下迷津。
1536 次点击
所在节点    PHP
9 条回复
raysonlu
2022-02-24 09:24:13 +08:00
人为手动添加或者收集用户搜素点击习惯智能生成---冲锋衣和特定属性的映射表 ?
gyinbj
2022-02-24 09:43:38 +08:00
@raysonlu 我现在的想法是

固定品牌, 分类, 尺码三个属性 属于全商品的属性

后面的不同属性 需要 group by 产品搜索结果 聚合出来。

现在就这个 group by 聚合 没想好用什么技术实现 不能每次都去 group 表吧。。
encro
2022-02-24 10:00:47 +08:00
两个极端的解决办法:
1 ,每个类别一个 index;
2, 所有 keywords 都抽取出来放到一个字段,这样搜索是模糊搜索这个字段就可以了。
encro
2022-02-24 10:05:26 +08:00
没记错的话(毕竟差不多七八年了,快忘了),es 支持 tags 字段类型吧?


随便搜索的:

动态字段: https://www.jianshu.com/p/2980d3e1fbfb

查找多个精确值: https://www.elastic.co/guide/cn/elasticsearch/guide/current/_finding_multiple_exact_values.html
gyinbj
2022-02-24 10:30:23 +08:00
@encro 我现在主要是没想通数据怎样存储。

因为要先把筛选规格聚合出来,

然后用户会通过选择不同的筛选规格 在去细化检索产品
wowbaby
2022-02-24 13:35:17 +08:00
这个比较复杂吧,我也一直没找到好的解决方案,京东购物体验做得真的是好,搜索关键还可以帅选品牌、属性等等,都细化了,相对来讲阿里系做的不好用。
gyinbj
2022-02-24 13:50:36 +08:00
@wowbaby 是的, 体验很好

我现在能想到的解决思路就是从搜索结果里面聚合出来筛选条件 , 然后用户可以再去用来搜索,

继续努力中。
encro
2022-02-24 15:48:50 +08:00
我给的方案就是这方面的,你要的不仅是这“冲锋衣”分类,其他类别和冲锋衣类的字段是不一样的吧?

那么有两种方案:
1 ,统一字段:tags:[冲锋衣,女装,L],这是 es 和 xunsearch 不一样的,xunsearch 差不多相对于 sphinxsearch 加强版,实现方式还是数据库那一套。es 原生支持 tags 这类字段,这个就变得容易多了。
2 ,不同类别因为字段可能不一样,所以每个类别一个 index 。

你以前用 xunsearch 怎么用的,es 应该比 xunsearch 更加简单。
encro
2022-02-24 15:50:31 +08:00
每台明白你是想换 es 还是想不换?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/835994

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX