すべてのプロダクト
Search
ドキュメントセンター

Vector Retrieval Service for Milvus:リソース計算機を使用して必要なコンピューティングリソースを見積もる

最終更新日:Sep 24, 2025

Vector Retrieval Service for Milvus を使用する前に、コンピューティングリソースの要件を見積もることが不可欠です。これにより、システムの安定性を確保し、コストを最適化できます。Milvus は、データセットのサイズ、ベクターのディメンション、インデックスタイプなどの要因に基づいて必要なリソースを見積もるのに役立つリソース計算機を提供します。ただし、最終的な構成は、ご自身のパフォーマンステストに基づいて常に調整する必要があります。

リソース計算機

説明

このサービスは、vCPU とメモリの比率を 1:4 に維持します。たとえば、2 vCPU のインスタンスには 8 GiB のメモリが付属します。インスタンスの安定性を確保するために、サービスは必要以上のメモリリソースをプロビジョニングします。

[リソース計算機] を使用して、インスタンスリソースのベースライン見積もりを取得できます。ベクター数 (百万単位) とベクターのディメンションを入力し、インデックスタイプを選択します。システムは適切なインスタンス構成を推奨します。たとえば、HNSW インデックスタイプ (M=4) を使用する 800 万個の 768 ディメンションのベクターを持つデータセットの場合、リソース計算機は下の図に示すように推奨構成を表示します。この推奨事項をインスタンスの選択とパフォーマンステストの開始点として使用できます。image

リソースパラメーターの構成

高可用性の有効化

高可用性 (HA) 構成は、各ノードのレプリカを 2 つ維持することで、本番クラスターの安定性を確保します。これにより、システムのフォールトトレランスと信頼性が大幅に向上します。

説明

HA を有効にすると、非 HA 構成と比較してリソース要件が 2 倍になります。本番クラスターでこの機能を有効にする前に、リソースのニーズを十分に評価してください。

リソーススケールの指定

パラメーター

説明

ベクター数 (百万単位)

データセット内のベクターの総数。データセットが大きいほど、より多くのストレージが必要になり、インデックス構築とクエリの計算の複雑さが増します。これにより、処理時間が長くなり、ハードウェア要件が高くなる可能性があります。

ベクターディメンション

各ベクターのディメンション数。高次元のベクターは、インデックスの複雑さと類似検索の計算コストを増加させます。これは、特に効果的な次元削減や量子化戦略がない場合、ストレージコストとクエリ速度の両方に影響します。

インデックスタイプの選択

インデックスタイプは、リソース要件とクエリパフォーマンスを決定する重要な要素です。インデックスアルゴリズムが異なれば、クエリ速度、取得率、リソース消費の間でトレードオフも異なります。

インデックスタイプ

説明とユースケース

HNSW

特に高次元データに対して、超高速のクエリ応答を提供するグラフベースのインデックス。最適な用途: 十分なメモリとコンピューティングリソースが利用可能で、可能な限り最速のクエリ速度が必要なユースケース。

IVF_FLAT

高い検索パフォーマンスと精度を提供します。FLAT よりも大幅に優れたパフォーマンスを、より低いリソース消費で提供します。最適な用途: パフォーマンスとコストのバランスが求められる大規模なデータセット。

DISKANN

メモリに収まらない大規模なデータセットで効率的な取得を行うために設計されたディスクベースの ANN インデックス。Vamana グラフアルゴリズムを使用します。最適な用途: メモリが制約となる非常に大規模な高次元データセット。

SCANN

検索空間の枝刈りと量子化を使用する効率的な ANN インデックス。最大内積検索 (MIPS) に優れています。最適な用途: 精度よりも取得速度が重要な大規模データセット。

FLAT

正確な力まかせ探索を実行します。最適な用途: 完全な精度が必須で、クエリ速度が遅くても許容できる小規模なデータセット (数百万ベクター未満など)。

IVF_SQ8

量子化を使用して取得を高速化します。その精度は HNSW よりも低い場合があります。最適な用途: リソースは限られているが、高い取得率が必要な大規模データセット。

インデックスパラメーターの設定

  • HNSW: 各ノードの近傍数を定義する [M] パラメーターを構成します。

    • [M] の値を大きくすると、取得率と精度が向上しますが、インデックスの構築時間とメモリ使用量も増加します。

    • [M] の値を小さくすると、ビルドが高速化され、メモリフットプリントが小さくなりますが、精度がいくらか犠牲になる可能性があります。

    • [M] の推奨開始値は lg(N) です。ここで、N はベクターの総数です。その後、クエリのパフォーマンスに基づいてこの値 (16、32、64 など) を微調整できます。

  • IVF_FLAT および IVF_SQ8: 各クラスター内のベクター数を設定します。これにより、ベクタースペースをパーティション分割するクラスターの数が決まります。

    • SCANN: [with_raw_data] スイッチを使用して、生データをインデックスに保存するかどうかを制御します。システムが主に高速な近似検索に使用され、生データに頻繁にアクセスしない場合は、このスイッチを [False] に設定します。

    スカラーフィールドの設定

    [スカラーフィールド] を有効にする場合は、[行あたりの平均データサイズ] を設定します。このパラメーターは、インデックスシステムがメモリ、ストレージ、シャーディングを計画し、クエリパフォーマンスを最適化するのに役立ちます。