四种向量检索架构对比:RedisSearch、ES 与混合架构选型分析

我们对比这四种:

1️⃣ RedisSearch:元数据过滤 + 向量检索(单引擎)

2️⃣ Elasticsearch:元数据过滤 + 向量检索(单引擎)

3️⃣ Redis + ES:ES先过滤 → 再向量检索

4️⃣ Redis + ES:Redis先向量检索 → ES过滤(工业主流)


一、四种架构整体图

① Redis 单引擎

复制代码
Query
 ↓
RedisSearch
(KNN + TAG filter)
 ↓
Result

② ES 单引擎

复制代码
Query
 ↓
Elasticsearch
(vector + bool filter)
 ↓
Result

③ 双引擎(ES先过滤 ❌)

复制代码
Query
 ↓
Elasticsearch filter
 ↓
Redis/ES vector search
 ↓
Result

④ 双引擎(Redis先召回 ✅)

复制代码
Query
 ↓
Redis KNN recall
 ↓
Elasticsearch filter
 ↓
Result

二、核心维度对比(⭐⭐⭐⭐⭐重点)

维度 Redis单引擎 ES单引擎 ES先过滤 Redis先召回(推荐)
向量搜索速度 ⭐⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐ ⭐⭐⭐⭐⭐
元数据过滤能力 ⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
召回质量 ⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐ ❌ ⭐⭐⭐⭐⭐
延迟稳定性(P99) ⭐⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐ ⭐⭐⭐⭐
权限系统支持 ⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
大规模扩展 ⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐ ⭐⭐⭐⭐⭐
工程复杂度 ⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐
企业RAG适配 ⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐⭐

三、逐个方案深度分析


方案① RedisSearch 单引擎

工作方式

Redis 同时做:

复制代码
KNN + TAG过滤

优点

✅ 极低延迟(内存ANN)

✅ 架构简单

✅ 运维成本低


致命问题

1️⃣ TAG filter 会破坏 HNSW

过滤发生在搜索阶段:

复制代码
只允许访问部分节点

导致:

  • recall下降
  • ANN退化

2️⃣ 复杂查询能力弱

Redis 不擅长:

  • bool组合
  • 权限继承
  • keyword ranking

适合阶段

✅ MVP

✅ 百万级以内知识库


方案② Elasticsearch 单引擎

工作方式

ES 同时执行:

复制代码
bool filter + vector search

优点

✅ 强过滤能力

✅ hybrid search 原生支持

✅ 企业权限模型友好


问题(很多人低估)

1️⃣ 向量搜索慢

ES ANN:

复制代码
磁盘 + segment + bitset

不是纯内存图。


2️⃣ P99 延迟高

典型:

复制代码
P50 = 80ms
P99 = 800ms+

3️⃣ 成本高

需要:

  • 更多节点
  • JVM tuning

适合

✅ 过滤复杂

❌ 高QPS语义检索


方案③ ES先过滤 → 再向量检索(错误架构 ❌)

这是很多团队的直觉方案。


为什么看起来合理?

复制代码
先过滤权限
再找相似

逻辑像 SQL。


但 ANN 不是 SQL。

核心问题:破坏 HNSW 图

过滤后:

复制代码
导航路径消失

导致:

  • 找不到最近邻
  • recall暴跌

典型现象

  • 明明有答案却搜不到
  • 结果随机变化
  • 长尾延迟爆炸

工业界基本不用。


方案④ Redis先召回 → ES过滤(⭐工业标准)

工作方式

Step1:Redis

复制代码
全局语义空间找 TopK

保持 HNSW 完整。


Step2:ES

在候选集合中:

复制代码
权限过滤
keyword增强
排序

为什么它最好?

因为分工正确:

系统 做自己最擅长的事
Redis 快速语义Recall
ES 精准结构Filter

技术本质

这是:

复制代码
Recall → Filter → Rerank

也是:

  • OpenAI Retrieval
  • Microsoft Copilot
  • 企业知识助手

通用架构。


四、性能直觉对比(非常关键)

假设:

复制代码
1000万文档
财务权限占5%

ES先过滤

复制代码
1000万 → 50万
ANN在50万上跑

问题:

  • 图稀疏
  • 路径断裂

Redis先召回

复制代码
1000万 ANN导航
→ Top300
→ ES过滤

ANN 始终在最优空间。


五、真实生产结论(行业经验)

阶段 推荐架构
Demo Redis
小规模企业 ES
中大型RAG Redis→ES ⭐
超大规模 多Recall引擎

六、总结⭐

RedisSearch 适合高性能语义召回,Elasticsearch 擅长复杂元数据过滤。若先进行结构化过滤会破坏 HNSW 图的全局连通性,降低召回质量。因此工业界普遍采用 Redis 进行向量召回,再由 Elasticsearch 执行权限与结构化过滤的两阶段检索架构。


真正大厂级架构升级路径

复制代码
Redis → Redis+ES → 多Recall → Learning-to-Rank → Agentic Retrieval

这基本就是 AI 搜索系统的完整进化路线。

相关推荐
Slow菜鸟10 分钟前
单体架构的三种形态
架构
汽车仪器仪表相关领域17 分钟前
Kvaser Memorator Professional 5xHS CB:五通道CAN FD裸板记录仪,赋能多总线系统集成测试的旗舰级核心装备
大数据·网络·人工智能·单元测试·汽车·集成测试
生成论实验室42 分钟前
《事件关系阴阳博弈动力学:识势应势之道》第八篇:认知与反思关系——探索、定位与延续
人工智能·算法·架构·知识图谱·创业创新
头条快讯2 小时前
中国非遗美食文化的跨国传承:鲁味居在北美市场的标准化实践与布局
大数据·人工智能
我是发哥哈3 小时前
深度评测:五款主流AI培训平台的课程交付能力对比
大数据·人工智能·学习·机器学习·ai·chatgpt
摇滚侠3 小时前
DSL 学习 ElasticSearch 主要就是学习 DSL 查询语言
学习·elasticsearch·jenkins
Datakeji3 小时前
2026年AI大模型接口加速站榜单新鲜出炉!五大平台硬核数据全面揭秘
大数据·人工智能
冷雨夜中漫步3 小时前
Claude Code源码分析——Claude Code 核心架构与关键模块实现设计
ai·架构·claude·claudecode
landuochong2003 小时前
给 Claude 订阅装一只电表 —— Claude API 多项目计量代理 `token-proxy` 实现详解
架构·claudecode
图解AI系列4 小时前
我打算用 12 天搭一套 AI 客服系统(企业级实战,附源码)
大数据·人工智能