首页/新闻资讯/正文详情

向量数据库Milvus: 索引类型(三)

发布时间:2026/9/24 17:40:30 来源:云帆数科 栏目:资讯中心
向量数据库Milvus: 索引类型(三)
一、为什么需要索引没有索引时Milvus 会做暴力搜索FLAT把查询向量和 Collection 里每一个向量都算一遍相似度然后排序取 Top-K。这种方式精度 100%但速度随数据量线性下降。100 万条数据可能还能忍1 亿条就完全不可用了。索引的核心思想是用少量精度损失换取大幅速度提升。二、Milvus 支持的索引类型1. FLAT暴力索引原理不做任何预处理查询时遍历所有向量。特性说明精度100%速度慢随数据量线性下降内存等于原始向量大小适用场景数据量小10万或需要 100% 精度index_params { index_type: FLAT, metric_type: COSINE }2. IVF 系列倒排文件索引原理先用聚类算法把所有向量分成nlist个簇查询时只搜索最近的nprobe个簇。索引说明IVF_FLAT基础版簇内用 FLAT 搜索IVF_SQ8标量量化内存减少 75%IVF_PQ乘积量化内存大幅减少精度有损关键参数参数说明建议值nlist聚类簇数4 × sqrt(N)N 是数据量nprobe查询时搜索的簇数nlist的 1%-10%index_params { index_type: IVF_FLAT, metric_type: COSINE, params: {nlist: 128} } # 查询时 search_params { metric_type: COSINE, params: {nprobe: 16} }nprobe 的权衡nprobe越大 → 精度越高速度越慢nprobe越小 → 精度越低速度越快3. HNSW原理构建一个多层图结构查询时从顶层开始逐层向下搜索类似“跳表”的思想。特性说明精度高通常 95%速度快毫秒级内存较大需要存储图结构适用场景高并发、低延迟场景关键参数参数说明建议值M每个节点的最大连接数16-64efConstruction构建时的搜索范围100-500ef查询时的搜索范围50-200index_params { index_type: HNSW, metric_type: COSINE, params: {M: 16, efConstruction: 200} } # 查询时 search_params { metric_type: COSINE, params: {ef: 100} }ef 的权衡ef越大 → 精度越高速度越慢ef必须 ≥limit返回数量4. DiskANN磁盘索引原理基于磁盘的图索引适合超大规模数据十亿级。特性说明精度高速度中等受磁盘 IO 影响内存低数据存在磁盘适用场景超大规模、内存受限index_params { index_type: DISKANN, metric_type: COSINE, params: {} }5. SCANNGoogle 的索引特性说明精度高速度快适用场景大规模、高精度要求6. GPU 索引Milvus 支持 GPU 加速的索引类型索引说明GPU_IVF_FLATGPU 版 IVF_FLATGPU_IVF_PQGPU 版 IVF_PQGPU_CAGRANVIDIA 的图索引适用场景极高吞吐量、可接受 GPU 成本。三、索引类型对比索引精度速度内存构建速度适用场景FLAT100%慢高快小数据、高精度IVF_FLAT高中中中通用场景IVF_SQ8中高中低中内存受限IVF_PQ中快极低慢超大规模HNSW高快高慢高并发低延迟DiskANN高中极低慢十亿级数据GPU_CAGRA高极快高中高吞吐场景推荐索引原因原型开发FLAT简单、精度高中小规模通用IVF_FLAT平衡精度和速度高并发低延迟HNSW查询快内存受限IVF_SQ8 / IVF_PQ压缩向量十亿级数据DiskANN磁盘存储极致吞吐GPU_CAGRAGPU 加速备注索引参数nprobe、ef需要在精度和速度之间调优五、索引的创建与管理1. 创建索引# 创建 HNSW 索引 client.create_index( collection_namedocuments, index_params{ index_type: HNSW, metric_type: COSINE, params: {M: 16, efConstruction: 200} } )2. 查看索引# 查看索引信息 indexes client.list_indexes(collection_namedocuments) print(indexes) # 查看索引详情 index_info client.describe_index( collection_namedocuments, index_namevector ) print(index_info)3. 删除索引client.drop_index( collection_namedocuments, index_namevector )六、索引与召回率的关系召回率 检索到的相关结果数 / 所有相关结果数FLAT召回率 100%但慢索引召回率略降但速度大幅提升原则召回率降低是可控的通过调整参数可以让召回率接近 100%同时保持高速。

相关推荐

说好底片全送精修30张,交片时只剩15张?用轻虾导出微信聊天记录留证,摄影约拍留痕攻略 + 6 大避坑
说好底片全送精修30张,交片时只剩15张?用轻虾导出微信聊天记录留证,摄影约拍留痕攻略 + 6 大避坑

约拍这件事,从询价到拿片少则两周、多则两三个月,中间几乎全靠微信推进:套系里含什么、底片给多少张、精修几张、加片怎么算钱、外景改期怎么定、什么时候交片。问题在于,这些约定往往散落在几十次对话里,有的在询价时… · 2026/9/24 17:40:30

我把小红书账号 做成了一个 Skill:从定位到日更,全部自动化
我把小红书账号 做成了一个 Skill:从定位到日更,全部自动化

QUOTE真正值得留下的,不是一个漂亮模板,而是每天都能复用的做事方法—— 国哥本文看点01从三个工位开始02三层内容系统03自动化的边界01START SMALL从三个工位开始前段时间,我想试一个很小的项目。我有一个房间,里面放了五个工位。… · 2026/9/24 17:40:30

前端开发者收藏!2026最新路径,带你从“切图仔”转型AI智能体指挥官
前端开发者收藏!2026最新路径,带你从“切图仔”转型AI智能体指挥官

本文专为前端开发者设计,介绍了如何利用现有技能(TypeScript/JavaScript)结合2026年最新技术栈(Node.js、OpenAI API、LangChain.js等),分阶段学习开发Web端智能Agent。内容涵盖从打通JS/TS与LLM连接&#… · 2026/9/24 17:40:30

实拍交通标志数据集550张:txt/xml双格式,跑通yolov8训练
实拍交通标志数据集550张:txt/xml双格式,跑通yolov8训练

简介:这是一份面向深度学习目标检测方向的实拍交通标志数据集,适合正在做交通标志识别项目、准备YOLO系列算法训练或课程设计的学生与算法工程师使用。数据集共包含550张实拍图像,覆盖停止、提示、等待三类标志,并已同步提供txt与… · 2026/9/24 18:14:30

YOLOv5+RealSense D455单目测距实战:从检测框到毫米级深度值的精准映射
YOLOv5+RealSense D455单目测距实战:从检测框到毫米级深度值的精准映射

简介:本资源是一套基于YOLOv5-3.1与Intel RealSense D455深度相机实现的单目测距系统完整源码,面向计算机视觉初学者、嵌入式AI开发者及智能感知项目实践者,解决目标检测与距离估算融合落地的关键问题,适用于机器人避障、工业定位… · 2026/9/24 18:14:18

无人机目标检测数据集与YOLO训练教程:5000张标注图片+划分脚本实战
无人机目标检测数据集与YOLO训练教程:5000张标注图片+划分脚本实战

简介:一套面向无人机视觉应用的目标检测数据集,包含5000张真实场景高清图像,覆盖多种飞行环境与目标形态。数据使用LabelImg标注,标签质量较高,并同时提供VOC(xml)、COCO(json&#… · 2026/9/24 18:14:18

YOLOv8+DeepSORT施工安全检测跟踪实战:从数据集训练到部署避坑指南
YOLOv8+DeepSORT施工安全检测跟踪实战:从数据集训练到部署避坑指南

简介:一套面向施工场景的安全隐患检测与跟踪解决方案,基于YOLOv8与DeepSORT算法,帮助工程管理人员自动识别工人是否佩戴安全帽、穿着反光背心等,并实现持续跟踪预警。资源核心包含1206张已标注图像的目标检测数据集,同… · 2026/9/24 18:14:18

小米8青春版刷安卓11:zip包拆包、备份与刷机全流程解析
小米8青春版刷安卓11:zip包拆包、备份与刷机全流程解析

简介:针对小米8青春版适配Android 11(LineageOS 18.1)的第三方固件包,面向想升级系统、体验新特性的刷机爱好者。压缩包共13个文件,体积798.3MB,包含系统与vendor分区镜像、增量补丁、分区列表、boot引导镜… · 2026/9/24 18:14:18

你的论文“AI味”为什么洗不掉?不是词换得不够多,是节奏被摸透了
你的论文“AI味”为什么洗不掉?不是词换得不够多,是节奏被摸透了

aigcbiye官网 微信公众号搜一搜 aigcbiye 你有没有遇到过这种事:明明自己逐句写的段落,提交检测之后却被标了一堆红。你怀疑检测系统疯了,但系统没疯。它不是在找你抄了谁,也不是在判断“这到底是不是AI写的”——它在干一件更隐… · 2026/9/24 18:14:18

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13

1D-CNN时间序列建模实战:从Conv1d原理到工业落地
1D-CNN时间序列建模实战:从Conv1d原理到工业落地

简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26

柔软的L:汉语语流中被忽视的舌肌张力控制
柔软的L:汉语语流中被忽视的舌肌张力控制

1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码