外卖店铺和商品搜索,搜索联想词,搜索历史,搜索结果页;包括关键字搜索,标签搜索等。
支持千万DAU级别的搜索流量,支持高并发,高流量,性能优化。
面向 C 端的商品和店铺搜索系统,整个搜索系统分为导购层,召回排序层,引擎数据层,离线数据层。商品/店铺/配送数据存储在离线mysql 表中,实时导入es在线引擎,建立倒排索引和正排索引,便于在线服务搜索。C 端用户发起搜索请求,通过导购层转发,到达召回排序层,通过 QP 解析搜索词意图识别,进行多路召回(原词/分词/丢词/换词/图谱/类目/向量),编写 es-sql 从 es引擎召回店铺和商品。召回后进行算法精排,重排,结果组装,以品带店或者店带品形式返回给导购层。导购层请求 Summary 对召回的商品和商户信息补全,请求智能 UI 构建动态卡片返回体,回传给前端渲染页面。
召回排序层图化改造,把 pipeline 串行模式改造成为 DAG 图化执行模式。pipeline 流程为:请求解析->QP 意图识别->召回预处理->多路召回->召回合并->算法精排->混排重排->返回体组装。具体是将粗粒度的串行处理流程拆分成精细粒度算子,以有向图依赖模式执行,同步阻塞模式升级成异步非阻塞模式,优化服务平均RT和99线,解耦模块化代码。