• 关于 Milvus
  • 开始
  • 概念
  • 用户指南
  • 数据导入
  • 人工智能工具
  • 管理指南
  • 工具
  • 集成
  • 教程
  • 常见问题
  • API Reference

快照Compatible with Milvus 3.0.x

快照是 Milvus Collections 的时间点映像,是快速回滚、版本控制和测试的理想选择。它捕捉 Collections 在特定时间戳的状态,只存储元数据和清单文件,如 Schema、索引和向量数据文件(binlogs),以便高效存储和恢复。

快照是快速的时间点数据镜像,适用于快速回滚或测试(几天到几周)。同时,备份是单独存储的独立、完整副本,可用于长期灾难恢复(数周至数年),并能更好地防止整体存储故障。

要创建备份,请参阅Milvus 备份

快照解剖

Milvus 实现了基于清单的快照架构,可在不复制实际向量数据的情况下实现高效的时间点数据捕获、存储和恢复。该架构将元数据管理与物理数据存储分离开来,实现了引用对象存储中现有段文件的轻量级快照。

为一个 Collection 创建快照时,Milvus 会收集以下内容:

  • 快照元数据

    提供创建快照的基本信息,包括快照名称和描述、目标 Collections ID 以及创建快照的时间点。

  • Collections 描述

    它包含目标 Collections 的描述,包括其 Schema 定义、分区信息和属性。

  • 索引信息

    存储索引元数据和索引文件路径。

  • 分段数据

    它捕获了向量数据文件(binlogs)、删除日志(deltalogs)和索引文件。

在上述信息中,Milvus 会为每个网段生成 Apache Avro 清单文件,并在 JSON 文件中存储快照元数据、Collection 说明、索引信息和清单文件的路径。下图说明了快照文件夹结构。

snapshots/{collection_id}/
├── metadata/
│   └── {snapshot_id}.json         # Snapshot metadata (JSON format)
│
└── manifests/
    └── {snapshot_id}/             # Directory for each snapshot
        ├── {segment_id_1}.avro    # Individual segment manifest (Avro format)
        ├── {segment_id_2}.avro
        └── ...

创建快照通常只需几毫秒,恢复快照则需要几秒到几分钟,具体取决于数据量。

存储影响和注意事项

一旦 Milvus 在快照中引用了段或索引文件,除非你删除收集快照,否则它不会垃圾收集这些文件。快照消耗的存储空间与目标 Collections 的大小成正比,对象存储成本适用于快照保留。在极端情况下,单个快照甚至会使对象存储成本翻倍。建议您

  • 定期删除旧快照,以节省存储空间。
  • 使用描述性的名称和说明,以备将来参考。
  • 始终验证快照创建和恢复结果。
  • 跟踪快照创建时间戳、存储使用情况和恢复任务 ID,以便进行监控和故障排除。

限制和约束

  • 快照在创建后不可更改。
  • 您只能将快照还原到与原始快照在同一群集中的新集合。
  • 恢复的 Collections 保留相同的 Schema、分片数和分区数。
  • 恢复的历史数据可能与 TTL 策略冲突。建议在创建快照前禁用 TTL 或调整 TTL 设置。

更多信息

想要更快、更简单、更好用的 Milvus SaaS服务 ?

Zilliz Cloud是基于Milvus的全托管向量数据库,拥有更高性能,更易扩展,以及卓越性价比

免费试用 Zilliz Cloud
反馈

此页对您是否有帮助?