milvus-logo
LFAI
フロントページへ
  • Milvusマイグレーション

Faissから

このガイドでは、FaissからMilvus 2.xへデータを移行するための包括的なステップバイステップのプロセスを提供します。このガイドに従うことで、Milvus 2.xの高度な機能と改善されたパフォーマンスを活用しながら、効率的にデータを移行することができます。

前提条件

マイグレーションの設定

マイグレーション設定例ファイルをmigration.yaml として保存し、実際の状況に応じて設定を変更してください。コンフィグファイルは任意のローカルディレクトリに自由に置くことができます。

dumper: # configs for the migration job.
  worker:
    limit: 2
    workMode: faiss    # operational mode of the migration job.
    reader:
      bufferSize: 1024
    writer:
      bufferSize: 1024
loader:
  worker:
    limit: 2
source: # configs for the source Faiss index.
  mode: local
  local:
    faissFile: ./testfiles/faiss/faiss_ivf_flat.index

target: # configs for the target Milvus collection.
  create:
    collection:
      name: test1w
      shardsNums: 2
      dim: 256
      metricType: L2

  mode: remote
  remote:
    outputDir: testfiles/output/
    cloud: aws
    endpoint: 0.0.0.0:9000
    region: ap-southeast-1
    bucket: a-bucket
    ak: minioadmin
    sk: minioadmin
    useIAM: false
    useSSL: false
    checkBucket: true
  milvus2x:
    endpoint: localhost:19530
    username: xxxxx
    password: xxxxx

次の表は、コンフィグファイル例のパラメータを説明したものです。コンフィグファイルの全リストはMilvus Migration を参照してください:FaissからMilvus 2.xへの移行をご参照ください。

  • dumper

    パラメータ説明
    dumper.worker.limitダンパースレッドの同時実行数。
    dumper.worker.workMode移行ジョブの動作モード。Faissインデックスから移行する場合はfaissに設定する。
    dumper.worker.reader.bufferSize各バッチでFaissから読み込むバッファサイズ。単位:KB。
    dumper.worker.writer.bufferSize各バッチでMilvusに書き込むバッファサイズ。単位はKB:KB。
  • loader

    パラメータ説明
    loader.worker.limitローダースレッドの同時実行数。
  • source

    パラメータ説明
    source.modeソース・ファイルの読み取り元を指定します。有効な値:
    -local: ローカル・ディスクからファイルを読み込む。
    -remote: リモート・ストレージからファイルを読み込む。
    source.local.faissFileソース・ファイルが置かれているディレクトリ・パス。例えば、/db/faiss.index
  • target

    パラメータ説明
    target.create.collection.nameMilvusコレクションの名前。
    target.create.collection.shardsNumsコレクションに作成されるシャードの数。シャードの詳細については、用語を参照してください。
    target.create.collection.dimベクトルフィールドの次元。
    target.create.collection.metricTypeベクトル間の類似性を測定するために使用されるメトリックタイプ。詳細は「用語」を参照。
    target.modeダンプされたファイルの保存場所。有効な値:
    -local: ダンプされたファイルをローカルディスクに保存します。
    -remote: ダンプされたファイルをオブジェクトストレージに保存します。
    target.remote.outputDirクラウドストレージバケット内の出力ディレクトリパス。
    target.remote.cloudクラウドストレージサービスプロバイダ。値の例:aws gcp,azure.
    target.remote.endpointMilvus 2.xストレージのエンドポイント。
    target.remote.regionクラウドストレージのリージョン。ローカルのMinIOを使用する場合は任意の値を指定できます。
    target.remote.bucketデータを保存するバケット名。Milvus2.xの設定と同じ値でなければなりません。詳細はシステム設定を参照してください。
    target.remote.akMilvus 2.xストレージのアクセスキー。
    target.remote.skMilvus 2.xストレージのシークレットキー。
    target.remote.useIAM接続にIAM Roleを使用するかどうか。
    target.remote.useSSLMilvus2.xへの接続時にSSLを有効にするかどうか。詳しくは「通信時の暗号化」を参照。
    target.remote.checkBucket指定したバケットがオブジェクトストレージに存在するかどうかを確認するかどうか。
    target.milvus2x.endpoint接続先Milvusサーバのアドレス。
    target.milvus2x.usernameMilvus 2.xサーバのユーザ名。このパラメータはMilvusサーバのユーザ認証が有効な場合に必要です。詳細については、「認証の有効化」を参照してください。
    target.milvus2x.passwordMilvus2.xサーバのパスワード。Milvusサーバーでユーザー認証が有効になっている場合、このパラメータは必須です。詳細については、「認証の有効化」を参照してください。

移行タスクの開始

  1. 以下のコマンドで移行タスクを開始します。{YourConfigFilePath} は設定ファイルmigration.yaml が存在するローカルディレクトリに置き換えてください。

    ./milvus-migration  dump  --config=/{YourConfigFilePath}/migration.yaml
    

    上記のコマンドは、FaissインデックスデータをNumPyファイルに変換し、bulkInsertオペレーションを使ってターゲットバケットにデータを書き込む。

  2. NumPyファイルが生成されたら、以下のコマンドでMilvus 2.xにインポートする。{YourConfigFilePath} は設定ファイルmigration.yaml が存在するローカルディレクトリに置き換えてください。

    ./milvus-migration  load  --config=/{YourConfigFilePath}/migration.yaml
    

結果の確認

マイグレーションタスクが実行されると、APIコールやAttuを使用してマイグレーションされたエンティティ数を確認することができます。詳細については、Attuおよびget_collection_stats() を参照してください。

翻訳DeepL

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
フィードバック

このページは役に立ちましたか ?