简介:淘宝每次的搜索行为在后端都会有大量的数据计算和处理才会召回符合用户需求的搜索结果,当面对的业务越来越多如何在工程体系上不断演化满足不同业务的需求?特邀阿里巴巴技术专家介绍统一召回引擎,带你了解如何应对~
特邀嘉宾:
项昭贵(项公)-阿里巴巴高级技术专家
视频地址: https://summit.aliyun.com/2021/session/689
阿里自研的整套搜索工程体系-AI Online Serving体系,目前支撑起海内外阿里电商全部的搜索、推荐、广告业务,时刻置身大数据主战场,引导成交占据集团电商大盘主体;此外,作为中台技术中坚,AI·OS已是包括电商、阿里云、优酷、菜鸟、盒马、钉钉等等在内全集团的基础设施,更为重要的是,AI·OS体系的云产品(开放搜索和智能推荐)矩阵通过阿里云服务于全球开发者,在稳定性和工程效率上都是行业领先水平。
左图是搜索引擎HA3和推荐引擎BE的不同执行流程,我们将各引擎功能抽象成算子,把基础功能形成公共算子库,用户可以直接复用和根据业务需求开发,形成右图的Suez框架。
1.查询流程DAG化
2.多种查询表达方式
等.....
可以灵活定制执行流程,加速业务迭代速度
既要,又要,还要
数据规模膨胀体现在数据维度越来越多。例如电商搜索领域以前只考虑商家、商品两个维度,现在还需要考虑物流、位置等维度。传统引擎处理把这些数据在离线处理join成一张大宽表推给在线做索引构建和查询服务,这会有个问题,很可能出现一个辅表数据更新导致大量的主表数据更新,从而出现写数据扩大的问题,对在线服务的时效性有很大的挑战,在一些场景上很难得到满足,尤其大促场景很难满足要求低延迟高时效的需求。
传统解决方案:
将数据按一定维度拆分通过多个引擎实例去提供服务,由业务方来将一次查询拆分成多个请求访问多个引擎,实现搜索结果。
存在的问题:
例如外卖平台搜索,发现想搜索的店铺因为配送时间或距离原因没有match上,导致意图搜索菜单没有体现,用户体验不佳;
数据规模膨胀另一个体现是数据量变大,数据量变大导致单个搜索加载提供查询的时间变多。
传统解决方案:
一个是将索引进行扩裂,可能带来请求的拆分和结果的合并,随着个数越来越多,耗时越来越大,逐渐成为技术瓶颈。另一个是当搜索个数多时,整个集群的稳定性和可用性受到损害,对用户而言存在查询结果不稳定情况。
3.并行查询,降低延迟的利器
把索引数据按一定维度切分,在处理用户的查询请求时可以根据不同的切分并行的查询,从而降低整个查询的延迟,也避免了通过扩裂的方式带来的问题。
4.向量召回,深度学习在召回阶段应用
在信息丰富的今天,我们的查询引擎光靠文本查询很难满足业务的需求
打造个性化推荐效果的召回引擎
开放搜索(OpenSearch)是基于阿里巴巴自主研发的大规模分布式搜索引擎搭建的一站式智能搜索业务开发平台,通过内置各行业的查询语义理解、机器学习排序算法等能力,提供充分开放的引擎能力,助力开发者快速搭建更高性能、更高搜索基线效果的智能搜索服务。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
dreamweaver中想要实现一种图片切换效果,就是鼠标放在图片的不同区域上就会显示...
问题背景 有一天我们的UI设计师找到我说,要把页面中我自己用程序写的动画,换成...
ViewModelComponent 是一个 Hilt 组件层次结构 (Component hierarchy) 中的一员...
WML 页面通常称为 \"deck\"。每个 deck 含有一系列的 card。card 元素可包含文本...
flex 基本概念 flex布局(flex是flexible box的缩写), 也称为弹性盒模型 。将...
微信h5页面拉起第三方导航应用 需要准备的: 通过微信认证的公众号 有备案过的域...
demo.html: !DOCTYPE html html lang=en head meta charset=UTF-8 titleDocumen...
今天学习到了一个新的css特效,波动水球效果,也是非常的好看 HTML: !DOCTYPE h...
说明,在网页开发中,在表单中加入autocomplete=off后,IE和FF不会提示保存密码...
一、新站首页的链接布置 1、 链接布置的位置:链接布置的位置决定了链接的权重分...