首先, 最为重要的问题是解决搜索商品覆盖面少的情况. 在和促销业务及团购业务的部门负责人沟通后, 要了解了他们的痛点.
促销的业务主要是实现各种形式的促销, 帮助线下的店铺提升销售业绩. 具体的形式包括满额减价, 满件减价, 满额送赠品, 定额任选等, 促销手段的丰富程度则令人咋舌, 竟然有数十种之多.
不过导致的结果就是, 顾客在购买决策的时候陷入了选择障碍. 由于不清楚哪些商品参加了哪些活动, 用户很难弄清楚买哪些商品更经济实惠. 因此, 促销的业务人员希望能有一个搜索功能, 允许用户查找参加某个促销活动的商品到底有哪些. 当然, 在促销活动中, 根据分类和关键词再次缩小查询范围, 也是更好的附加功能.
而团购的业务方, 更为看中的是搜索带来的关键词查询和筛选能力. 之前的团购是采用数据库 SQL 语言的查找来实现的. 在业务的初期, 团购主要通过不同的频道来实现, 例如水产频道有阳澄湖大闸蟹团购, 数码频道有 Apple iPad Pro 团购, 时尚频道有爱马仕箱包团购等.
用户只需要在限定的频道内浏览即可, SQL 查询也毫无压力. 但是随着团购商品和用户访问量的增加, 关键词搜索的需求被提到议事日程上. 这时, SQL 语言模糊型的关键词匹配出现了性能瓶颈, 而且越来越明显. 此外, 它也没法提供开源搜索系统中自带的切面 (Facet) 功能.
来源: http://www.jianshu.com/p/c0d6b923e90c