このガイドは、mongot 配置に適した開始構成を選択するのに役立ちます。効果的な開始構成を決定し、特定のニーズに合わせて調整するには、次の手順に従ってください。
はじめる
プライマリワークロードクラスを特定する
まず、アプリケーションが高 CPUまたは低 CPUワークロードクラスのどちらに該当するかを判断します。これは、正しいリソースを選択する際に最も重要な要素です。
- 高 CPU ワークロード
- クエリ パフォーマンスが重要で、CPU 集中型の汎用全文検索にはこのクラスを選択します。これらのノードは通常、2:1 RAMと CPU の比率はあります。
- 低 CPU ワークロード
- このクラスは、メモリが未加工 CPU 能力よりも優先される、データ量が少ないベクトル検索アプリケーションに最適です。これらのノードは通常、8:1 RAMと CPU の比率はあります。
Tip
すぐに開始する場合、または 一般的なユースケースがある場合は、小文字または中型の高 CPUノードが通常はバランスが取れた有効な 開始点 になります。
開始サイズを選択します
ワークロードクラスを特定したら、次の表を使用して、プライマリ スケーリング次元に基づいて推奨される開始 CPU サイズを見つけます。これらの推奨事項は 開始点です。実際のワークロードパターンに基づいて CPU サイズを調整します。
ユースケース | クラス | スケーリング単位 | サイズ |
|---|---|---|---|
default | 高 CPU | 一般的な目的、はじめに | 小または中 |
ベクトル検索、低データ量 | 低 CPU | <= 10GB of vectors 10GB - 50GB of vectors >= 50GB of vectors | Small Medium Large |
データ量が少ない汎用の全文検索 | 高 CPU | 20 - 40 QPS, light
indexing 80 - 160 QPS 320 - 480 QPS, heavy indexing | Small Medium Large |
例、全文検索アプリケーションで 1 秒あたり 100 クエリ(QPS)を処理することが予想されている場合は、中高 CPUノードが適切な選択です。
ディスク サイズ ガイドライン
インデックスマッピングにより、コレクションのサイズと結果の検索インデックスのサイズは必ずしも相関しない場合があります。例、ドキュメントに 100 フィールドがあっても、検索インデックスがそれらのフィールドの 5 のみに構成されている場合、インデックスはコレクションよりもはるかに小さくなります。逆に、すべてのフィールドをマッピングしたり、オートコンプリートなどの機能を使用したりすると、インデックスのサイズが増大する可能性があります。
インデックス サイズの推定
コレクションのサイズに基づいてインデックスの合計サイズを見積もるには、次の手順を実行します。
1-2 GBのデータを挿入するか、
$outを使用して小規模のコレクションを作成します。選択したフィールドマッピングで検索インデックスを作成します。
結果のインデックスサイズとインデックスとコレクション サイズの比率を確認します。Atlas Search をすでに使用している場合は、 クラスター メトリクス またはインデックスリスト ページ でインデックスサイズを確認できます。
インデックスとコレクションのサイズ比率を使用して、予想されるコレクションサイズに基づいてインデックスの合計サイズを見積もります。例、1 GBコレクション250MB のインデックス(0.25:1 の比率)が生成される場合、12 GBコレクションでは約 3 GBインデックスが生成される可能性が高くなります。
絞り込み、配置、モニター
サイズ設定は反復的なプロセスです。初期構成を配置した後、そのパフォーマンスを監視し、それに応じて調整します。
推定値を微調整します: 配置する前に、リソース割り当て に関する考慮事項を確認してください。インデックス戦略(例: nGram トークン化)やクエリの複雑さなど、リソースのニーズに影響可能性のある要因を慎重に監視してください。
ディスクのサイズ設定については、インデックスサイズがコレクションサイズと直接相関していないことを覚えておいてください。
配置: 本番環境で使用できるアプリケーションの場合、リソース分離と高可用性を確保するために、専用の検索ノードを使用することを 強く推奨 します。
キー メトリクスを監視します: 起動後にパフォーマンスを監視して、増やすアップまたはスケールダウンが必要かどうかを確認します。(例: )。
CPU: CPU 使用率が一貫して 80% を超える場合は、増やすアップが必要になる可能性があります。
メモリ:
Search Page Faultsが 1 秒あたり一貫して 1000 を超える場合、システムにはより多くのメモリが必要です。検索ページのフォールトを測定するには、mongot_system_process_majorPageFaults_operationsメトリクスを使用します。ディスク:インデックスの再構築を処理するのに十分な空きディスク領域があることを確認します。一般的に、インデックスに必要なディスク領域の 2 倍を割り当てる必要があります。 この余分なスペースにより、必要なときにインデックスを再構築できます。ディスク使用率が 90% に達すると、
mongotは読み取り専用になります。