84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
最近新项目要做一个跟美团非常类似的团购网站。里面会涉及到包括热门团购的查询,个性化推荐,类别查询,按地理位置和时间排序等。。。
这个项目我会用Node.js和Mongodb。我想知道一下像这类的查询业务是不是需要用到比如Lucene或者Sphinx这样的全文索引引擎呢,或者其他思路?谢谢。
走同样的路,发现不同的人生
试了一下,美团前台的搜索是索引了套餐的标题(包括网站编辑加上的部分)、店名、地址,其中套餐标题拆词也能搜到相应结果,而地址拆词搜不到。应该是用了两种方式,地址部分经过了分词用的是类似Xunsearch的分词索引插件,标题和店名是Sphinx之类的全文索引。
后台借了个账号看了下,单子、商家、套餐,都是按地址和标题搜索,和前台用的一个搜索接口,只是多个了ID。
考虑到Mongo对全文检索的响应速度,折中的解决方法是分词入MySQL,准确率一般,完美的方法只能是整合搜索引擎。热门、推荐、位置类别那些都好说。
团购需要查询的项目通常是固定的,比如价格、时间、地点、商家、折扣等等。
唯一能用到全文索引搜索的,可能就是团购商品的具体描述这块。但是相比上面的,这个搜索的作用比较小,用户也很少用到。建议前期先搁置这块,把精力集中在基本的、常用的功能上。等以后根据精力、性能、用户分析调研等因素再考虑。
elasticsearch 也不错啊~~
试了一下,美团前台的搜索是索引了套餐的标题(包括网站编辑加上的部分)、店名、地址,其中套餐标题拆词也能搜到相应结果,而地址拆词搜不到。应该是用了两种方式,地址部分经过了分词用的是类似Xunsearch的分词索引插件,标题和店名是Sphinx之类的全文索引。
后台借了个账号看了下,单子、商家、套餐,都是按地址和标题搜索,和前台用的一个搜索接口,只是多个了ID。
考虑到Mongo对全文检索的响应速度,折中的解决方法是分词入MySQL,准确率一般,完美的方法只能是整合搜索引擎。热门、推荐、位置类别那些都好说。
团购需要查询的项目通常是固定的,比如价格、时间、地点、商家、折扣等等。
唯一能用到全文索引搜索的,可能就是团购商品的具体描述这块。但是相比上面的,这个搜索的作用比较小,用户也很少用到。建议前期先搁置这块,把精力集中在基本的、常用的功能上。等以后根据精力、性能、用户分析调研等因素再考虑。
elasticsearch 也不错啊~~