新一代海量数据搜索引擎 TurboSearch 来了!
|
一. TurboSearch 简介AI Lab 多年一直在搜索领域进行深耕和积累,继搜搜网页搜索之后,陆续服务于微信搜一搜(公众号文章、朋友圈、视频)、应用宝搜索、地图搜索、音乐搜索、视频搜索、手 Q、QQ 群等精品垂直搜索业务,以及云搜中小数据搜索业务。 从网页搜索继承下来的搜索系统,经过多年的需求迭代,越来越难以支撑结构级新特性更新。因此我们投入精力对整体系统重构和优化,重新构建了大规模、轻量级、松耦合、可裁剪、低运营成本 具有完整解决方案 的新一代搜索系统 TurboSearch 。主要有以下特性:
与业界部分开源引擎框架 ElasticSearch,Solr 等不同的是,TurboSearch 更倾向于面向在线 高并发、大规模、低时延 的检索需求,同时能够平行扩展到多模态场景,并提供完整的搜索运营能力。TurboSearch 在将会分层次和分阶段逐步在公司内部开源。
在 多模态 / 向量检索 领域,AI Lab 已经推出 GNES 检索系统,聚焦于内容对象的 Encoding,以及多种算法模型的平台化整合。同样在向量检索领域,TurboSearch 会逐步从索引层面,探索针对大规模向量数据集的高性能检索。并从向量索引、及系统化运营层面为 GNES 提供支持。 二. 引擎框架介绍TurboSearch 引擎主要有六大核心能力:
TurboSearch 基础框架:
:
Weak-AND Weak-AND 在广告或推荐等小数据集召回场景下,已经有较多的应用。在海量数据检索中,TurboSearch 正探索其在 长 Query 召回场景 下的应用。通过结合 Weak-AND 与 AND,平衡召回率和检索性能。
Weak-AND 的性能优化和场景探索将持续进行。 倒排性能优化 ** 求交召回过程中,倒排的索引结构设计,对求交耗时影响较大。** 内存实时索引倒排在设计上具有以下特性:
TurboSearch 对内存倒排索引做以下设计:
其中:
对比老架构固定块倒排索引:
4. 多粒度索引不同于 N-gram 这种暴力索引方式,多粒度索引专注于文档与 Query 中的隐性词组发现,对正常分词补充。检索时先进行粗粒度词召回,如果粗粒度无结果或结果偏少,将再次进行细粒度词召回。通过这个方式来解决松散召回导致的紧邻结果截断问题。 如 “海底捞万象城店” 对应的粗粒度索引为 “P: 海底捞 万象城 店”,保证结果能紧邻命中召回,如果在粗粒度检索无结果时,将再次使用 “海底捞”、“万象城”、“店” 进行检索召回。既保证了准确性,也能兼顾召回率。 5. 海量数据索引支持对于海量数据搜索业务场景,脱胎于网页搜索的 TurboSearch 继承三种类型的索引集群结构:
根据不用搜索业务数据场景需求,可将各类索引集群组合达到设计目标。 6. 核心逻辑功能插件拓展TurboSearch 引擎考虑到自定义功能开发拓展,目前对以下核心功能做了插件支持:
7. 私有化部署TurboSearch 整体设计上支持私有化部署。 在公司内网环境运营时,可使用已有的服务组件,如 CL5(名字服务)、Sumeru(资源管理) 等。然而在私有化部署场景下,这些公共服务难以一同打包部署。 因此 TurboSearch 对这些功能 均有 内建相应能力,可选择使用, 并基于以下设计支持私有化实现:
四. 系统运营1. 离线、在线运营架构以较小数据量的 FOB(实时内存索引系统)集群为例 ,离线、在线运营系统通过以下设计保证稳定持续服务:
![](https://pic3.zhimg.com/v2-f8a913fc50d357310dd450cff3a7e82 2. 干预系统在现网运营中,检索召回排序无法保证所有 Query 达到最佳。对于一些突发高曝光 Badcase,需要有 临时干预能力。TurboSearch 在接入层设计了干预系统,并沉淀积累了大量干预策略,可覆盖现网运营大部分干预需求。** 主要支持两大类干预类型:
![](https://pic3.zhimg.com/v2-6a5a803a4fe0540be88f6c45dcd96f0 3. 全流程检索、数据诊断在持续优化的海量数据搜索业务运营过程中,会有持续或突发的 Badcase 需要定位。** 而一个海量数据搜索业务中,一般都是 多集群、多机服务、多层逻辑 的复杂系统。在整体系统中定位和诊断 Badcase 是一个复杂而困难的工作。** 比如一篇文档未被召回有以下多种可能:
一篇文章有如此繁多的漏召回可能性。TurboSearch 从在线服务模块和离线数据流程两个方面入手,设计全流程的诊断,来协助快速定位召回和数据问题。 五. 应用场景和展望** 目前 TurboSearch 已可应用在 传统文本搜索、关系链搜索、LBS 位置相关搜索、中心聚类向量搜索 等场景。** 在持续改进引擎现有功能之外,我们还会做更多的探索:
|
时间:2020-01-18 23:59 来源: 转发量:次
声明:本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,不为其版权负责。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。