刚看到Milvus社区这个案例,1G内存检索2500万向量还能在强标量过滤下保持毫秒响应,FLAT算法这波表现确实出乎意料。核心突破在于暴力搜索+高效标量索引的组合优化:FLAT本身全量比对,但结合标量过滤预筛选后,实际参与距离计算的向量数量骤降,内存带宽利用率反而比IVF的聚类结构更高。从个人经验看,很多场景下大家迷信IVF的召回率优势,却忽略了强过滤场景中IVF的聚类中心可能因标量条件被大量剪枝,导致退化回近似暴力搜索。这案例直接打脸了“索引结构必须复杂”的惯性思维。
我的疑问是:当标量过滤选择性极高(比如过滤掉99%数据)时,FLAT的线性扫描瓶颈在哪儿?理论延迟曲线会有拐点吗?另外,这种方案是否意味着传统倒排索引+向量搜索的混合架构(如Elasticsearch+FAISS)在极端条件下面临重构压力?行业趋势上,我认为“场景化索引选择”会越来越重要,未来向量数据库可能需要动态切换算法来适配查询模式。大家在实际业务中遇到过类似的反直觉优化案例吗?欢迎分享踩坑经验。