b2c 中商品搜索时的筛选条件的技术实现是怎样的?

2014-03-12 14:42:09 +08:00
 orzcc
求解技术实现的原理大概是怎么样的,一直困扰着我。

拿京东做个例子

比如搜索:移动电源。
http://search.jd.com/Search?keyword=移动电源&enc=utf-8

问题1:它给出的商品筛选条件和类目 [移动电源] 中的筛选条件是不同的,那么搜索的筛选条件是怎么得到的?(类目 [移动电源] 的页面: http://list.jd.com/652-829-1219-0-0-0-0-0-0-0-1-1-1-1-1-72-4137-0.html)

此外,比如我选择其中几个条件后: http://search.jd.com/search?keyword=%D2%C6%B6%AF%B5%E7%D4%B4&qr=&qrst=UNEXPAND&et=&rt=1&bs=no&area=1&ev=exprice_90-199%40404_308581%40&uc=0#select

问题2:如何对剩余的筛选条件选项进行属性逐层筛选,对应属性没有显示产品数量的时候则应消减。
补充:商品量起码在百万级别以上

有兴趣的同学讨论下数据库表结构和大概的实现方案哈。
4359 次点击
所在节点    程序员
5 条回复
cevincheung
2014-03-12 21:02:29 +08:00
Solr、Sphinx MVA
vvdpzz
2014-03-12 22:52:15 +08:00
ElasticSearch的Facets功能也可以实现类似的需求。
ninjai
2014-03-13 01:32:17 +08:00
设计的逻辑而已,我用couchdb实现过同样的功能
orzcc
2014-03-14 10:02:59 +08:00
多谢各位,之前用过coreseek,但是没用于商品搜索条件的逻辑。回头去比较下sphinx和solr,还有那个ElasticSearch。

都好先进啊。。couchdb都没听过的说。不过目前的问题应该跟数据库类型无关。
javachen
2014-03-14 11:37:27 +08:00
solr的Facets功能

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

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

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

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

© 2021 V2EX