🚀 Zilliz Cloudを無料で試す、完全管理型のMilvus—10倍の高速パフォーマンスを体験しよう!今すぐ試す>>

milvus-logo
LFAI
  • Home
  • Blog
  • Milvusバックアップツールの使い方:ステップバイステップガイド

Milvusバックアップツールの使い方:ステップバイステップガイド

  • Engineering
September 27, 2024
Michael Mo

Milvusは、高次元ベクトル埋め込みによって10億スケールの非構造化データを保存、インデックス、検索できる、オープンソース、高性能、高スケーラブルなベクトルデータベースです。検索拡張世代(RAG)、セマンティック検索、マルチモーダル検索、レコメンデーションシステムなどの最新のAIアプリケーションの構築に最適です。Milvusはラップトップから大規模分散システムまで、様々な環境で効率的に動作します。オープンソースソフトウェアおよびクラウドサービスとして利用可能です。

Milvusバックアップは、Milvusのデータをバックアップおよびリストアするためのツールです。様々なアプリケーションシナリオに対応するため、CLIとAPIの両方を提供しています。本ガイドでは、Milvus Backupの使用手順を説明し、バックアップのニーズに自信を持って対応できるようにします。

準備

バックアップまたはリストアプロセスを開始する前に、環境をセットアップする必要があります:

1. Milvus-backup リポジトリのリリースから最新のバイナリをダウンロードします。お使いのオペレーティングシステムに適したバージョンを選択します:

  • macOS の場合:milvus-backup_Darwin_arm64.tar.gz またはmilvus-backup_Darwin_x86_64.tar.gz

  • Linux の場合:milvus-backup_Linux_arm64.tar.gz またはmilvus-backup_Linux_x86_64.tar.gz

2. GitHubから設定ファイルをダウンロードする。

3.3.tarファイルをお好みのディレクトリに解凍し、解凍したフォルダ内のconfigs/ ディレクトリにbackup.yaml を配置します。以下のようなディレクトリ構造になっていることを確認してください:

├── configs
│   └── backup.yaml
├── milvus-backup
└── README.md

コマンドの概要

ターミナルに移動し、ツールのコマンドに慣れる:

1.一般ヘルプ:利用可能なコマンドとフラグを表示するには、milvus-backup help と入力する。

milvus-backup is a backup&restore tool for milvus.

Usage:
 milvus-backup [flags]
 milvus-backup [command]

Available Commands:
 check       check if the connects is right.
 create      create subcommand create a backup.
 delete      delete subcommand delete backup by name.
 get         get subcommand get backup by name.
 help        Help about any command
 list        list subcommand shows all backup in the cluster.
 restore     restore subcommand restore a backup.
 server      server subcommand start milvus-backup RESTAPI server.

Flags:
     --config string   config YAML file of milvus (default "backup.yaml")
 -h, --help            help for milvus-backup

Use "milvus-backup [command] --help" for more information about a command.

2.バックアップの作成:バックアップの作成:milvus-backup create --help と入力して、バックアップの作成に関する具体的なヘルプを表示します。

Usage:
 milvus-backup create [flags]

Flags:
 -n, --name string                   backup name, if unset will generate a name automatically
 -c, --colls string                  collectionNames to backup, use ',' to connect multiple collections
 -d, --databases string              databases to backup
 -a, --database_collections string   databases and collections to backup, json format: {"db1":["c1", "c2"],"db2":[]}
 -f, --force                         force backup, will skip flush, should make sure data has been stored into disk when using it
     --meta_only                     only backup collection meta instead of data
 -h, --help                          help for create

3.バックアップの復元:バックアップの復元方法については、milvus-backup restore --help を参照してください。

Usage:
 milvus-backup restore [flags]

Flags:
 -n, --name string                   backup name to restore
 -c, --collections string            collectionNames to restore
 -s, --suffix string                 add a suffix to collection name to restore
 -r, --rename string                 rename collections to new names, format: db1.collection1:db2.collection1_new,db1.collection2:db2.collection2_new
 -d, --databases string              databases to restore, if not set, restore all databases
 -a, --database_collections string   databases and collections to restore, json format: {"db1":["c1", "c2"],"db2":[]}
     --meta_only                     if true, restore meta only
     --restore_index                 if true, restore index
     --use_auto_index                if true, replace vector index with autoindex
     --drop_exist_collection         if true, drop existing target collection before create
     --drop_exist_index              if true, drop existing index of target collection before create
     --skip_create_collection        if true, will skip collection, use when collection exist, restore index or data
 -h, --help                          help for restore

バックアップ/リストアの使用例

milvus-backupツールを効果的に使用するためには、お客様のニーズや設定に応じていくつかの使用ケースがあります:

  1. 単一のmilvusインスタンス内:同じMilvusサービス内でコレクションを新しいものにコピーする。

  2. 一つのバケットで一つのS3内のMilvusインスタンス間:ルートパスは異なるが同じS3バケットを使用しているMilvusインスタンス間でコレクションを転送する。

  3. 異なるS3バケット間のMilvusインスタンス間:同じS3サービス内の異なるS3バケット間でコレクションを転送する。

  4. 異なるS3サービス間で:異なるS3サービスを使用しているMilvusインスタンス間でコレクションをコピーする。

それぞれのユースケースを詳しく見ていきましょう。

ユースケース1: Milvusインスタンス内でのバックアップとリストア

同じMilvusインスタンス内でコレクションをバックアップ・リストアする。同じS3バケットを使用して、"coll "という名前のコレクションをバックアップし、"coll_bak "としてリストアするとします。

設定:

  • Milvusはストレージにbucket_A

  • MinIOの構成:

minio:
 address: localhost # Address of MinIO/S3
 port: 9000 # Port of MinIO/S3
 accessKeyID: minioadmin # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 ssl:
   tlsCACert: /path/to/public.crt # path to your CACert file, ignore when it is empty
 bucketName: bucket_A # Bucket name in MinIO/S3
 rootPath: files # The root path where the message is stored in MinIO/S3

バックアップワークフロー

1.MilvusとMinIOが正しい場所を指すように、backup.yaml を設定する。

# Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
 address: localhost # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "bucket_A" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
  backupBucketName: "bucket_A" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

2.コマンドを使用してバックアップを作成する。

./milvus-backup create -c coll -n my_backup

このコマンドは、bucket_A/backup/my_backup にバックアップを配置します。

3.バックアップを新しいコレクションにリストアします。

./milvus-backup restore -c coll -n my_backup -s _bak

これにより、同じmilvusインスタンス内で "coll "が "coll_bak "としてリストアされます。

Figure: The Backup and Restore Workflow Within One Milvus Instance 図:Milvusインスタンス内でのバックアップとリストアのワークフロー

図:Milvusインスタンス内でのバックアップとリストアのワークフロー

ユースケース2: 1つのS3バケットを共有する2つのMilvusインスタンス間のバックアップとリストア

あるMilvusインスタンスからコレクションをバックアップし、同じS3バケットを使用して別のMilvusインスタンスにリストアする。milvus_Aに "coll "という名前のコレクションがあると仮定して、milvus_Bに "coll_bak "という名前の新しいコレクションをバックアップ、リストアする。2つのmilvusインスタンスはストレージとして同じバケット "bucket_A "を共有するが、ルートパスは異なる。

構成

  • Milvus Aはルートパスとしてfiles_A

  • Milvus Bはルートパスとしてfiles_B

  • Milvus AのMinIO設定:

minio:
 address: localhost # Address of MinIO/S3
 port: 9000 # Port of MinIO/S3
 accessKeyID: minioadmin # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 ssl:
   tlsCACert: /path/to/public.crt # path to your CACert file, ignore when it is empty
 bucketName: bucket_A # Bucket name in MinIO/S3
 rootPath: files_A # The root path where the message is stored in MinIO/S3
  • Milvus BのMinIO構成:
minio:
 address: localhost # Address of MinIO/S3
 port: 9000 # Port of MinIO/S3
 accessKeyID: minioadmin # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 ssl:
   tlsCACert: /path/to/public.crt # path to your CACert file, ignore when it is empty
 bucketName: bucket_A # Bucket name in MinIO/S3
 rootPath: files_B # The root path where the message is stored in MinIO/S3

バックアップワークフロー

1.Milvus Aのバックアップ設定

# milvus proxy address, compatible to milvus.yaml
milvus:
 address: milvus_A
 port: 19530
 authorizationEnabled: false
 # tls mode values [0, 1, 2]
 # 0 is close, 1 is one-way authentication, 2 is two-way authentication.
 tlsMode: 0
 user: "root"
 password: "Milvus"
 # Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
 address: milvus_A # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "bucket_A" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files_A" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
 backupBucketName: "bucket_A" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

2.バックアップコマンドを実行します:

./milvus-backup create -c coll -n my_backup

3.Milvus Bのコンフィギュレーションのリストア

backup.yaml 、Milvus Bを指すように変更し、MinIOルートパスを調整します:

# milvus proxy address, compatible to milvus.yaml
milvus:
 address: milvus_B
 port: 19530
 authorizationEnabled: false
 # tls mode values [0, 1, 2]
 # 0 is close, 1 is one-way authentication, 2 is two-way authentication.
 tlsMode: 0
 user: "root"
 password: "Milvus"
 # Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
  address: milvus_B # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "bucket_A" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files_B" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
 backupBucketName: "bucket_A" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

4.リストアコマンドを実行する:

./milvus-backup restore -c coll -n my_backup -s _bak

Figure: The Backup and Restore Workflow Between Two Milvus Instances Sharing One S3 Bucket 図:つのS3バケットを共有する2つのMilvusインスタンス間のバックアップとリストアのワークフロー

ユースケース3: 1つのS3にある2つのMilvusインスタンス間のバックアップとリストア、異なるバケット

Milvusインスタンス(Milvus_A)からコレクションをバックアップし、同じS3サービス内の別のMilvusインスタンス(Milvus_B)にリストアする。

設定:

  • Milvusはストレージにbucket_A

  • Milvus AのMinIO設定:

minio:
 address: localhost # Address of MinIO/S3
 port: 9000 # Port of MinIO/S3
 accessKeyID: minioadmin # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 ssl:
   tlsCACert: /path/to/public.crt # path to your CACert file, ignore when it is empty
 bucketName: bucket_A # Bucket name in MinIO/S3
 rootPath: files # The root path where the message is stored in MinIO/S3
  • Milvus BのMinIO構成:
minio:
 address: localhost # Address of MinIO/S3
 port: 9000 # Port of MinIO/S3
 accessKeyID: minioadmin # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 ssl:
   tlsCACert: /path/to/public.crt # path to your CACert file, ignore when it is empty
 bucketName: bucket_B # Bucket name in MinIO/S3
 rootPath: files # The root path where the message is stored in MinIO/S3

バックアップとリストアのワークフロー

1.Milvus Aのバックアップ設定

# milvus proxy address, compatible to milvus.yaml
milvus:
 address: milvus_A
 port: 19530
 authorizationEnabled: false
 # tls mode values [0, 1, 2]
 # 0 is close, 1 is one-way authentication, 2 is two-way authentication.
 tlsMode: 0
 user: "root"
 password: "Milvus"
 # Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
 address: localhost # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "bucket_A" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
 backupBucketName: "bucket_B" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

2.バックアップコマンドを実行します:

./milvus-backup create -c coll -n my_backup

3.Milvus Bの設定をリストアする。

# milvus proxy address, compatible to milvus.yaml
milvus:
 address: milvus_B
 port: 19530
 authorizationEnabled: false
 # tls mode values [0, 1, 2]
 # 0 is close, 1 is one-way authentication, 2 is two-way authentication.
 tlsMode: 0
 user: "root"
 password: "Milvus"
 # Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
  address: localhost # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "bucket_B" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
  backupBucketName: "bucket_B" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

4.リストアコマンドを実行します:

./milvus-backup restore -c coll -n my_backup -s _bak

Figure: The Backup and Restore Workflow Between Two Milvus Instances in One S3, Different Buckets 図:つのS3内の2つのMilvusインスタンス間のバックアップとリストアワークフロー、異なるバケット

図:1つのS3内の2つのMilvusインスタンス、異なるバケット間のバックアップとリストアのワークフロー

ユースケース4: 異なるS3サービス間の2つのMilvusインスタンス間のバックアップとリストア

1つのS3サービス(MinIO_A)を使用してMilvus_Aから "coll "という名前のコレクションのバックアップを容易にし、異なるS3サービス(MinIO_B)を使用してMilvus_Bにリストアし、各インスタンスが異なるストレージバケットを使用する。

構成

  • Milvus AのMinIO構成:
minio:
 address: minio_A # Address of MinIO/S3
 port: 9000 # Port of MinIO/S3
 accessKeyID: minioadmin # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 ssl:
   tlsCACert: /path/to/public.crt # path to your CACert file, ignore when it is empty
 bucketName: bucket_A # Bucket name in MinIO/S3
 rootPath: files # The root path where the message is stored in MinIO/S3
  • Milvus BのMinIO構成
 minio:
 address: minio_B # Address of MinIO/S3
 port: 9000 # Port of MinIO/S3
 accessKeyID: minioadmin # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 ssl:
   tlsCACert: /path/to/public.crt # path to your CACert file, ignore when it is empty
 bucketName: bucket_B # Bucket name in MinIO/S3
 rootPath: files # The root path where the message is stored in MinIO/S3

バックアップとリストアのワークフロー

1.Milvus Aのバックアップ設定

# milvus proxy address, compatible to milvus.yaml
milvus:
 address: milvus_A
 port: 19530
 authorizationEnabled: false
 # tls mode values [0, 1, 2]
 # 0 is close, 1 is one-way authentication, 2 is two-way authentication.
 tlsMode: 0
 user: "root"
 password: "Milvus"
 # Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
 address: minio_A # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "bucket_A" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
 backupBucketName: "bucket_A" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

2.バックアップコマンドを実行します:

./milvus-backup create -c coll -n my_backup

3.バックアップの転送

S3互換ツールまたはSDKを使用して、minio_A:bucket_A/backup/my_backup からminio_B:bucket_B/backup/my_backup にバックアップを手動でコピーします。

4.Milvus Bの設定をリストアする。

# milvus proxy address, compatible to milvus.yaml
milvus:
 address: milvus_B
 port: 19530
 authorizationEnabled: false
 # tls mode values [0, 1, 2]
 # 0 is close, 1 is one-way authentication, 2 is two-way authentication.
 tlsMode: 0
 user: "root"
 password: "Milvus"
 # Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
 address: minio_B # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "bucket_B" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
 backupBucketName: "bucket_B" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

5.リストアコマンドを実行します:

./milvus-backup restore -c coll -n my_backup -s _bak

Figure: The Backup and Restore Workflow Between Two Milvus Instances Across Different S3 Services 図:異なるS3サービスにまたがる2つのMilvusインスタンス間のバックアップとリストアのワークフロー

図:異なるS3サービスを介した2つのMilvusインスタンス間のバックアップとリストアのワークフロー

設定ファイルの説明

configs/backup.yaml ファイルを編集して、バックアップ設定をあなたの環境に合わせる。以下は設定オプションの内訳です:

ロギング:ロギングのレベルと出力設定を設定します。

# Configures the system log output.
log:
 level: info # Only supports debug, info, warn, error, panic, or fatal. Default 'info'.
 console: true # whether print log to console
 file:
   rootPath: "logs/backup.log"

Milvus接続:Milvusインスタンスの接続の詳細を設定します。

# milvus proxy address, compatible to milvus.yaml
milvus:
 address: localhost
 port: 19530
 authorizationEnabled: false
 # tls mode values [0, 1, 2]
 # 0 is close, 1 is one-way authentication, 2 is two-way authentication.
 tlsMode: 0
 user: "root"
 password: "Milvus"

MinIO設定:バックアップがMinIOまたは他のS3互換ストレージとどのように相互作用するかを定義します。

# Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
 # cloudProvider: "minio" # deprecated use storageType instead
 storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
 address: localhost # Address of MinIO/S3
 port: 9000   # Port of MinIO/S3
 accessKeyID: minioadmin  # accessKeyID of MinIO/S3
 secretAccessKey: minioadmin # MinIO/S3 encryption string
 useSSL: false # Access to MinIO/S3 with SSL
 useIAM: false
 iamEndpoint: ""
 bucketName: "a-bucket" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
 rootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance

 # only for azure
 backupAccessKeyID: minioadmin  # accessKeyID of MinIO/S3
 backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
 backupBucketName: "a-bucket" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
 backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath

結論

Milvusバックアップツールは、Milvusインスタンス内およびインスタンス間でコレクションをバックアップおよびリストアするための堅牢なソリューションを提供します。単一のインスタンス内、同じS3サービス内のインスタンス間、または異なるS3サービス間でバックアップを管理する場合でも、milvus-backupは柔軟かつ正確にすべてを処理します。

キーポイント

  1. 汎用性:milvus-backupは、単純なインスタンス内バックアップから複雑なクロスサービスリストアまで、複数のシナリオをサポートします。

  2. 構成の柔軟性: backup.yaml ファイルを適切に設定することで、ユーザは特定のニーズに合わせてバックアップとリストアのプロセスをカスタマイズし、異なるストレージ設定やネットワーク構成に対応することができます。

  3. セキュリティとコントロール:S3のバケットとパスを直接操作することで、データの保存とセキュリティを制御し、バックアップの安全性と許可されたユーザーのみがアクセスできることを保証します。

効果的なデータ管理は、お客様のアプリケーションでMilvusの可能性を最大限に活用するために非常に重要です。Milvusバックアップツールを使いこなすことで、複雑な分散環境においてもデータの耐久性と可用性を確保することができます。本ガイドは、ベストプラクティスと効率的なデータハンドリング技術を促進し、堅牢なバックアップ戦略を実施するユーザを支援します。

開発者であれ、データエンジニアであれ、ITプロフェッショナルであれ、Milvusバックアップツールを理解し活用することは、信頼性が高く効率的なデータ管理ソリューションを提供することにより、プロジェクトの成功に大きく貢献することができます。

Like the article? Spread the word

続けて読む