• Milvus 소개
  • 시작하기
  • 개념
  • 사용자 안내서
  • 데이터 가져오기
  • AI 도구
  • 관리 가이드
  • 도구
  • 연동 기능
  • 튜토리얼
  • 자주 묻는 질문
  • API Reference

스냅샷Compatible with Milvus 3.0.x

스냅샷은 Milvus 컬렉션의 특정 시점 이미지를 의미하며, 신속한 롤백, 버전 관리 및 테스트에 이상적입니다. 스냅샷은 특정 타임스탬프 시점의 컬렉션 상태를 캡처하며, 효율적인 저장 및 복원을 위해 스키마, 인덱스, 벡터 데이터 파일(binlog)과 같은 메타데이터 및 매니페스트 파일만 저장합니다.

스냅샷은 데이터의 특정 시점 이미지를 신속하게 생성하는 것으로, 빠른 롤백이나 테스트(수일에서 수주)에 적합합니다. 반면, 백업은 독립적이고 완전한 복사본으로, 장기적인 재해 복구(수주에서 수년) 및 전체 스토리지 장애에 대한 더 나은 보호를 위해 별도로 저장됩니다.

백업을 생성하려면 Milvus 백업을 참조하십시오.

스냅샷 구조

Milvus는 실제 벡터 데이터를 중복 저장하지 않으면서도 데이터를 특정 시점 기준으로 효율적으로 캡처, 저장 및 복원하기 위해 매니페스트 기반 스냅샷 아키텍처를 구현합니다. 이 아키텍처는 메타데이터 관리와 물리적 데이터 저장을 분리하여, 오브젝트 스토리지 내의 기존 세그먼트 파일을 참조하는 경량 스냅샷을 가능하게 합니다.

컬렉션에 대한 스냅샷을 생성하면 Milvus는 다음 정보를 수집합니다:

  • 스냅샷 메타데이터

    스냅샷 이름 및 설명, 대상 컬렉션 ID, 스냅샷 생성 시점 등 스냅샷 생성에 필요한 기본 정보를 제공합니다.

  • 컬렉션 설명

    스키마 정의, 파티션 정보 및 속성을 포함하여 대상 컬렉션에 대한 설명이 포함됩니다.

  • 인덱스 정보

    인덱스 메타데이터와 인덱스 파일의 경로를 저장합니다.

  • 세그먼트 데이터

    벡터 데이터 파일(binlogs), 삭제 로그(deltalogs) 및 인덱스 파일을 포함합니다.

위의 정보 중 Milvus는 각 세그먼트에 대해 Apache Avro 매니페스트 파일을 생성하고, 스냅샷 메타데이터, 컬렉션 설명, 인덱스 정보 및 매니페스트 파일의 경로를 JSON 파일에 저장합니다. 다음 다이어그램은 스냅샷 폴더 구조를 보여줍니다.

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가 스냅샷 내의 세그먼트 또는 인덱스 파일을 참조하면, 스냅샷을 삭제하지 않는 한 해당 파일에 대한 가비지 컬렉션이 수행되지 않습니다. 스냅샷은 대상 컬렉션의 크기에 비례하여 스토리지를 소비하며, 스냅샷 보존 기간 동안 오브젝트 스토리지 비용이 부과됩니다. 극단적인 경우, 단일 스냅샷으로 인해 오브젝트 스토리지 비용이 두 배로 늘어날 수도 있습니다. 다음을 권장합니다.

  • 저장 공간을 절약하기 위해 오래된 스냅샷을 정기적으로 삭제하십시오.
  • 나중에 참조할 수 있도록 설명적인 이름과 설명을 사용하십시오.
  • 스냅샷 생성 및 복원 결과를 항상 확인하십시오.
  • 모니터링 및 문제 해결을 위해 스냅샷 생성 타임스탬프와 스토리지 사용량을 추적하십시오.
  • 모니터링 및 문제 해결을 위해 복원 작업 ID를 저장하십시오.

제한 사항 및 제약 조건

  • 스냅샷은 생성 후 변경할 수 없게 됩니다.
  • 스냅샷은 원본과 동일한 클러스터 내의 새 컬렉션으로만 복원할 수 있습니다.
  • 복원된 컬렉션은 동일한 스키마, 샤드 수 및 파티션 수를 유지합니다.
  • 복원된 과거 데이터는 TTL 정책과 충돌할 수 있습니다. 스냅샷을 생성하기 전에 TTL을 비활성화하거나 TTL 설정을 조정하는 것이 좋습니다.
  • milvus-table 의 외부 소스로 스냅샷을 사용하려면, 소스 스냅샷이 일반 StorageV3 Milvus 컬렉션에서 가져온 것이어야 합니다. 외부 컬렉션의 스냅샷은 milvus-table 소스로 지원되지 않습니다.

추가 정보

번역DeepL

관리형 Milvus를 무료로 사용해 보세요

Zilliz Cloud는 번거로움이 없으며, Milvus 기반으로 10배 더 빠릅니다.

시작하기
피드백

이 페이지가 도움이 되었나요?