Qdrant 快照与备份
Qdrant 的快照是一份可以直接恢复的集合或整库状态,内容覆盖向量、payload 与索引配置三部分。流程是触发快照生成,再从下载端点取文件归档;恢复时上传快照或把它放进 snapshots 目录。集合级快照适合单集合迁移与回滚,全量快照用于整库备份。它比「重新灌库」可靠得多,因为全量重算 embedding 的时间与费用经常被低估。
基本信息
| 快照粒度 | 集合级与整库级 |
|---|---|
| 快照内容 | 向量、payload 与索引配置 |
| 创建集合快照 | POST /collections/<name>/snapshots |
| 下载 | GET /collections/<name>/snapshots/<snapshot-name> |
| 恢复方式 | 上传快照,或放入 snapshots 目录 |
| 代价 | 恢复期间该集合不可用 |
典型使用场景
- 大版本升级或索引参数调整前做例行备份
- 迁移到新集群时用快照作为初始数据,避免重新灌库
- 索引重建失败时快速回滚到可用状态
- 测试环境快速复制一份接近生产的数据
- 合规要求的定期归档与保留
创建与下载快照
创建与下载快照
curl -X POST http://localhost:6333/collections/kb/snapshots # 创建集合快照
# 返回快照名后下载:
curl -o kb.snapshot \
http://localhost:6333/collections/kb/snapshots/<snapshot-name>
curl -X POST http://localhost:6333/snapshots # 创建全量快照
curl http://localhost:6333/snapshots # 列出已有快照备份动作读法
| 动作 | 端点或方式 | 注意 |
|---|---|---|
| 创建集合快照 | POST /collections/<name>/snapshots | 返回快照名,需要记录下来 |
| 下载快照 | GET 对应快照地址 | 文件必须落到宿主机卷或对象存储 |
| 全量快照 | POST /snapshots | 覆盖全部集合,体积更大 |
| 恢复 | 上传或放入 snapshots 目录 | 恢复窗口内集合不可用,需安排时段 |
把恢复快照当作跨版本迁移前的演练:先在测试集群恢复一遍,能提前暴露版本或索引格式的不兼容问题。
快照文件要落到宿主机卷或对象存储:留在容器内时,容器一旦重建,备份会与数据一起消失。
快照是全量副本而非增量备份:每次创建都会占用与集合相当的空间,归档容量要按集合规模预留,避免磁盘写满导致快照与写入同时失败。
把快照目录与集合数据目录的容量分开规划:同一块盘同时承载写入与快照,出问题时两类风险会一起爆发。