3. 均匀分片策略
京东从总体架构图中我们可以明确看到,如果我们系统将一个term的倒排进行很大均分,那么相应的term的拉取倒排也会被分配各个searcher列。正式因为由于各个searcher是按照列表并且进行计算的,这样的均分操作就可以大大减少每个查询的平均召回相应时间。从理论上数据来讲,我们采用的均分分片的数据策略,也有效的契合了拉取倒排、京东排序、在线业务处理能力和CPU密集型的人物。但是是分片增加的。会带来硬件成本增加很高的后果,同时集群节点间的通信成本也会大大增加。需要进行一步的权衡折衷处理。
4. 业务优化
京东的搜索业务部门并不只有搜索书生上面所称述的策略和工程的计算逻辑,还必须融合很多业务逻辑,由于每一次搜索几乎都会召回很多结果,如果业务逻辑处理不好,也会导致搜索的整体体验不好。针对这个问题并且没有通用的解决方法的方案,但是通过实践我们部门总结一个基本原则信息:在离线阶段完成近可能多的业务逻辑,减少在线计算量!例如进行搜索排名时,我们需要根据京东用户的搜索历史行为(浏览、点击、购买等行为)对召回的结果进行一个算法排序上,的调整,在工程实现上我们会线离线统计出通一个query下所有用户对每个搜索展示商品的行为,然后建立一个模型系统,计算出该query下每个商品的权重,将其以hash结构存储;在线排序时,直接直接以query+商品id为key,取出权重作为反馈特征参与综合排序。
搜索技术的新发展
未来京东搜索在目前的当前架构中基础智商,团队也在进行一些新的搜索规则探索,比如场景搜索和图像的处理搜索。
场景搜索
京东大集团的业务扩展,用户在搜索使用的频频也越来越高,这个时候,目的不仅仅是查找我们的商品,还可能是查询促销活动等信息。为了满足这些信的用户需求,我们在目前商品的检索中融合了一套促销系统的数据。我们首先在Query Processor中增加对应意图的识别,然后将促销的数据转化为索引数据。只要Query Processor识别出用户提出的方面查询的效果意图,将对应的结果返回给用户。
图像搜索
以前传统的模式搜索仅仅这对针对文字,但是互联网电商的是给用户展示图片信息室非常重要的一个环节,很多购买决策行动都依赖它。目前我们利用deep learning技术离线训练图片的特征情况,并将其做成索引。当用户使用实拍图或者网图来搜索时,采用相同的方法提取特征,然后从索引中召回最相识的商品返回给用户。