首页/AI/RAG 与向量库速查/向量库迁移流程

向量库迁移流程

跨库迁移按“导出 → 转换 → 灌入 → 校验 → 切流”五步走:重点在 id 与 payload 的保真映射、度量语义对齐(余弦/内积/L2 与归一化)、以及全量灌库后跑同一评测集对比召回。

RAG 与向量库速查AI更新于 2026-10-13

向量库迁移流程

跨向量库迁移按五步走:导出、转换、灌入、校验、切流。最容易出错的是中间三处映射:id 策略(字符串、UUID、整型范围)必须一致;距离度量语义要对齐,余弦、内积、L2 之外还要确认向量是否归一化;payload 字段名与类型要能表达原有的过滤条件。校验不能只比条数,要抽样比对内容,并用同一评测集跑 recall@k 与 MRR 确认没有掉点。

基本信息

五个环节导出、转换、灌入、校验、切流
id 策略字符串、UUID、整型范围必须两端一致
度量语义余弦、内积、L2,并确认归一化处理
payload字段名与类型映射,保证过滤条件可表达
校验方式抽样内容比对加评测集回归
窗口安排增量双写,切读后观察稳定再停旧库

典型使用场景

  • 从自建集群迁移到托管服务,减少运维投入
  • 组件收敛:多套向量库合并成一套
  • 成本优化:换成更省存储或更省内存的方案
  • 版本不兼容导致的整体换代,只能重灌
  • 分片或集群结构重构,需要重新分布数据

迁移核对清单

迁移核对清单
□ id 策略一致(字符串 / UUID / 整型范围)
□ 距离度量语义一致(余弦 vs 内积 vs L2)
□ 向量是否归一化,两端处理一致
□ payload 字段名与类型映射,过滤条件可表达
□ 全量条数与抽样内容比对通过
□ 评测集 recall@k 与 MRR 不掉点
□ 增量双写与切流回滚方案就绪

环节读法

环节关键点失败表现
导出向量与 payload 完整导出缺字段,恢复后过滤条件失效
转换id 与字段映射id 冲突导致覆盖或数据丢失
灌入批量写入与限流写入中断,部分数据缺失
校验抽样内容比对加评测回归召回掉点,切换之后才发现
切流双写、灰度与回滚增量丢失,无法回退
迁移窗口内保持双写;校验通过后先切读流量,观察一段时间稳定再停旧库,避免一次性不可逆切换。
度量语义不一致是最隐蔽的坑:旧库用内积且向量未归一化时,迁到余弦度量的新库后排序会明显不同,而两端都不会报错。

易错点

  • 只比对条数不比对内容:payload 映射错误在切换之后才暴露,源头已难追
  • 新旧库度量语义不一致:召回结果不可比,评测结论失真
  • 迁移窗口未做双写:切换后这段时间的增量数据永久缺失
  • 没有回滚方案:校验一旦失败,只能硬着头皮往前切

数据来源与参考

  • Qdrant 官方文档(Migration 指南)
  • Milvus 官方文档(Milvus Backup / Migration)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌