milvus

简介

区别mysql,前者使用标量数据做索引,milvus使用向量作为索引。其他都和mysql差不多

支持单机部署和集群部署

生产环境一般集群部署

关键概念

互联网上80%往上都是非结构化

​ 补充:实体对应mysql中的行

名称对比

索引

MySQL的索引存磁盘,milvus为了加速查询,索引放内存,所以有了一些省内存的索引方式

mysql可以选择进行是否使用索引,milvus不使用索引工作不了

FLAT就是遍历,精度高,内存消耗大

IVF_FLAT(生产级):

就是先kmeans聚类,指定相似度的最高的n个簇,只查这几个簇里的内容

IVF_SQ8 : 在IVF_FLAT基础上把向量转标量,节省内存,降低精度

**IVF_PQ : **更加省内存,基本不用

**HNSW:**也是生产级的索引方式,基于图的方式,效率很高,原理复杂,本质是拿内存换时间

相似度度量

第一个注重数值,多用于人脸识别

第三个注重方向,多用于情感分类

第二个综合,什么都干

CRUD

不同于mysql可以用sql语句操作,milvus全得靠代码手搓

增删改不必说,和mysql差不多

查

简单查询本质上只做3件事:

  1. 算距离 向量相似度计算,由索引加速(ANNs算法);
  2. 划范围 通过 limit、radius、partition 缩小搜索圈;
  3. **加条件 ** 通过 filter 和 output_fields 做数据过滤与提取。

复杂查询----使用混合索引

在实际业务中,一条数据可能包含多个向量字段 (例如:一个商品既有"图片向量",又有"文字描述向量")。当你搜索时,可能希望同时考虑这两个维度的相似性,而不是只看其中一个。

混合检索的流程是:

  1. 分别执行多次 ANN 搜索:对每个向量字段进行一次独立的 Top-K 搜索(例如图片向量搜出 100 个结果,文字向量也搜出 100 个)。
  2. 重排序(Merge & Rerank):将这两组结果合并,使用一种策略重新打分,最终返回你最想要的 Top-N 个结果。

这种合并过程的关键在于"如何给每个结果综合评分"。Milvus 提供了两种内置策略:

你最想要的 Top-N 个结果。

这种合并过程的关键在于"如何给每个结果综合评分"。Milvus 提供了两种内置策略:

外链图片转存中...(img-GfXmtfMy-1784797868676)

相关推荐
TheBestRucy7 天前
从零构建企业级“中文法律智能问答系统”:FastAPI+Milvus+混合检索+真流式RAG实战
fastapi·milvus
Flynn Liang8 天前
内存/Redis/PGVector/Milvus/ES 怎么选?Spring AI VectorStore 抽象与向量库选型对照表
redis·elasticsearch·milvus·rag·springai·pgvector·向量库
kyrie_sakura9 天前
大模型学习19 大模型学习 - LangChain2_Retrieval(RAG-文档处理-向量处理检索-Milvus)
学习·langchain·milvus
Maiko Star9 天前
*【HM-LC】Milvus向量库详解:Collection、索引、混合检索与LangChain实战
langchain·milvus
霸道流氓气质11 天前
AI 图片管理平台:Spring AI 原生多模态、Milvus 向量语义检索与 MinIO 预签名安全管控的 React + 全栈生产级实战
人工智能·spring·milvus
一枕槐安48712 天前
多模态RAG实战:PDF图文混合文档检索问答本地跑通
langchain·pdf·milvus·ai应用开发·多模态rag
ai大模型-探索者16 天前
BGE-M3三种向量在Milvus怎么存(稠密、稀疏、多向量)
milvus·稀疏·多向量·稠密
唠点键盘之外的18 天前
29 切片的权限隔离(实战篇):Milvus + Spring AI,从 0 搭一条带权限过滤的检索链路
人工智能·spring·milvus
ai大模型-探索者18 天前
Milvus向量数据库(介绍与使用)
数据库·milvus
Crayon Lin19 天前
Milvus向量数据库入门
数据库·milvus