推荐系统[九]项目技术细节讲解z4:向量检索技术工程上实践,曝光去重实践以及检索引擎该如何选择:支撑亿级索引5毫秒级的检索[elasticsearchmilvus]
Posted 汀、
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐系统[九]项目技术细节讲解z4:向量检索技术工程上实践,曝光去重实践以及检索引擎该如何选择:支撑亿级索引5毫秒级的检索[elasticsearchmilvus]相关的知识,希望对你有一定的参考价值。
1.向量检索技术工程上实践
博文 推荐系统[九]项目技术细节讲解z3:向量检索技术与ANN搜索算法[KD树、Annoy、LSH局部哈希、PQ乘积量化、IVFPQ倒排乘积量化、HNSW层级图搜索等],超级详细技术原理讲解 介绍了几种主流ANN近似算法,实际应用上,也同样会遇到很多工程上的挑战
-
从单机性能这个角度,资源限制的主要是 CPU + 内存。不同的ANN算法,在索引构建和查询的时间复杂度各不相同,但基本上符合 “召回率越高,qps越低”。单机内存资源上限也制约着整体向量的规模,目前常规的服务器大部分都是 128G/256G左右的内存。举个例子,1亿个256维度的向量,整体的存储大小为 1^9 * 256 * 4B = 100G,算上服务系统资源消耗,索引切换等,一个大内存的机器顶多也就加载1个向量索引。
-
同时,由于搜索广告推荐场景,大部分都是数据/实验驱动增长,每个模型的切换全量都需要进行AB流量验证,因此会有多个版本的小流量实验。在中等规模(千万到亿级别的向量规模),会出现资源利用的不均衡**(每台机器只能加载1-2个索引版本,内存跑满但是cpu没有跑满)**。
-
当然还有索引版本管理,上下线等。此外有些对数据延时要求比较高的,还会额外关注索引是否能够增量或者实时更新。
在篇中将主要关注大公司和开源界,在更大规模(10亿+)的场景下如何做到低成本,高性能且能够横向扩容伸缩。
1.1 大厂的方案
<以上是关于推荐系统[九]项目技术细节讲解z4:向量检索技术工程上实践,曝光去重实践以及检索引擎该如何选择:支撑亿级索引5毫秒级的检索[elasticsearchmilvus]的主要内容,如果未能解决你的问题,请参考以下文章
推荐系统[九]项目技术细节讲解z1:Elasticsearch 如何进行快速检索(ES倒排索引和分词原理)以及倒排索引在召回中的应用。
推荐系统[九]项目技术细节讲解z2:搜索Query理解[Term WeightQuery 改写同义词扩写]和语义召回技术
推荐系统[三]:粗排算法常用模型汇总(集合选择和精准预估),技术发展历史(向量內积,Wide&Deep等模型)以及前沿技术