適切なクラスタータイプの選択
Zilliz Cloud でクラスターを作成する際、適切なコンピュートユニット (CU) を選択することは重要なステップです。CU はデータの並列処理に使用されるコンピューティングリソースの基本単位であり、異なるクラスタータイプは CPU、メモリ、ストレージのさまざまな組み合わせで構成されています。
クラスタータイプの理解
Zilliz Cloud では、パフォーマンス最適化済み, 容量最適化済み、および Tiered-storage のクラスタータイプを提供しています。
以下の表は、3 つのクラスタータイプをさまざまな側面から簡単に比較したものです。クラスタータイプ間の容量とパフォーマンスの詳細な比較については、最適なクラスタータイプの選択 に進んでください。
クラスタータイプ | Search QPS | Search Latency | Per Query CU容量 | Cost per Million Vectors |
|---|---|---|---|---|
パフォーマンス最適化済み | 500~1500 | sub-10 ms | 1.5 million 768-dim vectors | from $65/mo. |
容量最適化済み | 100~300 | tens-ms | 5 million 768-dim vectors | from $20/mo. |
Tiered-storage | 5~20 | hundreds-ms | 20 million 768-dim vectors | from $7/mo. |
パフォーマンス最適化済み クラスター
-
低レイテンシーと高スループットを重視するシナリオ向けに設計されています。
-
生成 AI、推薦システム、チャットボットなどのリアルタイムアプリケーションに最適です。
容量最適化済み クラスター
-
大規模なデータセットの処理のために作られており、検索パフォーマンスは抑えられているものの、パフォーマンス最適化済み クラスターの 5 倍のデータ容量を誇ります。
-
大規模な非構造化データ検索、著作権検出、本人確認などに最適です。
最適なクラスタータイプの選択
クラスタータイプを選択する際は、データ量、パフォーマンスの期待値、予算を考慮してください。ベクトル数と次元数の両方におけるベクトルデータの規模は、クラスターのリソース配分を決定する上で極めて重要な役割を果たします。
容量の評価
クラスターが収容できるエンティティ数は、クラスターのクエリ CU 容量に依存します。
以下の参照表は、ベクトル次元と総ベクトル数を考慮し、1 クエリ CU を持つ パフォーマンス最適化済み および 容量最適化済み クラスターの容量を示しています。データ量に必要なクエリ CU 数の見積もりについては、計算ツール をご利用ください。
Vector Dimensions | パフォーマンス最適化済み (Max. Vectors per query CU) | 容量最適化済み (Max. Vectors per query CU) | Tiered-storage (Max. Vectors per query CU) |
|---|---|---|---|
128 | 7.5 million | 25 million | 100 million |
256 | 4.5 million | 15 million | 60 million |
512 | 2.25 million | 7.5 million | 30 million |
768 | 1.5 million | 5 million | 20 million |
1024 | 1.125 million | 3.75 million | 15 million |
上記の指標は、主キーとベクトルのみを考慮したテストに基づいています。データセットに追加のスカラーフィールド(例:id、ラベル、キーワード)がある場合、実際の容量は異なる可能性があります。正確な評価のためには、独自にテストを行うことをお勧めします。
パフォーマンスの評価
レイテンシーや 1 秒あたりのクエリ数 (QPS) などのパフォーマンス指標は重要です。
パフォーマンス最適化済み クラスターは、特に 10 から 250 の範囲の標準的な top-k 値において、レイテンシーとスループットの面で 容量最適化済み クラスターを明確に上回ります。
以下の表は、パフォーマンス最適化済み クラスターと 容量最適化済み クラスターが QPS においてどのように機能するかを示すテスト結果です。
top_k | QPS for パフォーマンス最適化済み cluster (768-dim 1M vectors) | QPS for 容量最適化済み cluster (768-dim 5M vectors) |
|---|---|---|
10 | 520 | 100 |
100 | 440 | 80 |
250 | 270 | 60 |
1000 | 150 | 40 |
以下の表は、各クラスタータイプがレイテンシーにおいてどのように機能するかを示すテスト結果です。
top_k | Latency of パフォーマンス最適化済み cluster (768-dim 1M vectors) | Latency of 容量最適化済み cluster (768-dim 5M vectors) |
|---|---|---|
10 | < 10 ms | < 50 ms |
100 | < 10 ms | < 50 ms |
250 | < 10 ms | < 50 ms |
1000 | 10 - 20 ms | 50 - 100 ms |
シナリオの内訳
800 万枚の画像ライブラリを持つ画像推薦アプリケーションを構築していると仮定します。ライブラリ内の各画像は、768 次元の埋め込みベクトルで表現されています。あなたの目標は、1,000 QPS の推薦リクエストを迅速に処理し、30 ミリ秒未満で上位 100 件の画像推薦を提供することです。
この要件に適したクラスタータイプとクエリ CU を選択するには、以下の手順に従ってください。
-
レイテンシーの評価: 30 ミリ秒のレイテンシー要件を満たすのは、パフォーマンス最適化済み クラスターのみです。
-
容量の評価: 1 クエリ CU を持つ単一の パフォーマンス最適化済み クラスターは、150 万個の 768 次元ベクトルを収容できます。800 万個すべてのベクトルを保存するには、少なくとも 6 つのクエリ CU が必要です。
-
スループットの確認:
top-k設定を 100 にすると、パフォーマンス最適化済み クラスターは 440 QPS を達成できます。一貫して 1,000 QPS を維持するには、レプリカ数を 3 倍にする必要があります。
結論として、このシナリオでは パフォーマンス最適化済み クラスターが最良の選択肢です。6 つのクエリ CU で構成される各レプリカを 3 つ持つ構成が、完璧に機能するはずです。