翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon OpenSearch Serverless でのキャパシティ制限の管理
Amazon OpenSearch Serverless では、キャパシティを自分で管理する必要はありません。OpenSearch Serverless は、現在のワークロードに基づいて、アカウントのコンピューティング性能を自動的にスケーリングします。Serverless のコンピューティング性能は、OpenSearch Compute Units (OCU) で測定されます。各 OCU は、6 GiB のメモリと対応する仮想 CPU (vCPU)、および Amazon S3 へのデータ転送を組み合わせたものです。OpenSearch Serverless の分離アーキテクチャの詳細については、「仕組み」を参照してください。
最初のコレクションを作成すると、OpenSearch Serverless は冗長性の設定に基づいて OCU をインスタンス化します。デフォルトでは、冗長アクティブレプリカが有効になっているため、4 つの OCUs (インデックス作成用に 2 つ、検索用に 2 つ) がインスタンス化されます。これにより、別のアベイラビリティーゾーンのスタンバイノードで高可用性が確保されます。
開発とテストでは、コレクションの冗長化を有効にする設定を無効にすることができます。これにより、スタンバイレプリカが削除され、2 つの OCUs のみが使用されます (1 つはインデックス作成用、もう 1 つは検索用)。
これらの OCU は、インデックス作成や検索が行われていない場合でも常に存在します。後続のすべてのコレクションは、独自の OCUs のセットをインスタンス化する一意の AWS KMS キーを持つコレクションを除いて、これらの OCUs を共有できます。コレクショングループに関連付けられているすべてのコレクションは、同じ OCUs セットを共有できます。1 つのコレクショングループに含めることができるコレクションのタイプ (検索、時系列、またはベクトル検索) は 1 つだけです。詳細については、「Amazon OpenSearch Serverless コレクショングループ」を参照してください。
OpenSearch Serverless は、インデックス作成と検索の使用量が増えるにつれて OCUs を自動的にスケールアウトして追加します。トラフィックが減少すると、容量はデータサイズに必要な OCUs の最小数までスケールダウンします。
検索コレクションと時系列コレクションの場合、アイドル状態のときに必要な OCUs の数はデータサイズとインデックス数に比例します。ベクトルコレクションの場合、OCU 要件はベクトルグラフを保存するメモリ (RAM) とインデックスを保存するディスク容量によって異なります。アイドル状態でない場合、OCU 要件は両方の要因を考慮します。
ベクトルコレクションは、インデックスデータを OCU ローカルストレージに保存します。OCU RAM 制限はディスク制限よりも速く到達するため、ベクトル収集は RAM スペースによって制限されます。
冗長性を有効にすると、OCU 容量はインデックス作成用に 1 OCU (0.5 OCU x 2)、検索用に 1 OCU (0.5 OCU x 2) にスケールダウンされます。冗長性を無効にすると、コレクションはインデックス作成用に 0.5 OCU、検索用に 0.5 OCU にスケールダウンできます。
スケーリングでは、コレクションまたはインデックスに必要なシャードの数も考慮されます。各 OCU は指定された数のシャードをサポートし、インデックスの数はシャード数に比例する必要があります。必要な基本 OCUs の合計数は、データ、メモリ、シャード要件の最大数です。詳細については、AWS Big Data Blog の「Amazon OpenSearch Serverless によるあらゆる規模における費用対効果の高い検索機能
検索およびベクトル検索コレクションでは、迅速なクエリ応答時間を確保するために、すべてのデータがホットインデックスに保存されます。時系列コレクションでは、ホットストレージとウォームストレージを組み合わせて使用し、より頻繁にアクセスされるデータのクエリ応答時間を最適化するために、最新のデータがホットストレージに保存されます。詳細については、「コレクションタイプを選択する」を参照してください。
注記
ベクトル検索コレクションが検索コレクションまたは時系列コレクションと同じ KMS キーを使用している場合でも、ベクトル検索コレクションは OCU を検索コレクションおよび時系列コレクションと共有することはできません。最初のベクトルコレクション用に新しい OCU セットが作成されます。ベクトルコレクションの OCU は、同じ KMS キーコレクション間で共有されます。
コレクションのキャパシティを管理してコストを制御するため、現在のアカウントおよびリージョン用にインデックス作成と検索の全体的な最大キャパシティを指定できます。OpenSearch Serverless は、これらの仕様に基づいて、コレクションリソースを自動的にスケールアウトします。
インデックス作成と検索のキャパシティは個別にスケーリングされるため、それぞれにアカウントレベルの制限を指定します。
-
インデックス作成の最大キャパシティ — OpenSearch Serverless は、この数の OCU までインデックス作成のキャパシティを増やすことができます。
-
検索の最大キャパシティ — OpenSearch Serverless は、この数の OCU まで検索のキャパシティを増やすことができます。
注記
現時点では、キャパシティの設定はアカウントレベルでのみ適用されます。コレクションごとにキャパシティの制限を設定することはできません。
目標は、最大キャパシティがワークロードの急増を処理するために十分な量であるのを確実にすることです。OpenSearch Serverless は、ユーザーの設定に基づいてコレクションの OCU 数を自動的にスケールアウトして、インデックス作成と検索のワークロードを処理します。
キャパシティの設定
OpenSearch Serverless コンソールでキャパシティの設定を行うには、左側のナビゲーションペインで [Serverless] を展開し、[Dashboard] (ダッシュボード) を選択します。[Capacity management] (キャパシティ管理) で、インデックス作成と検索の最大キャパシティを指定します。
を使用して容量を設定するには AWS CLI、UpdateAccountSettings リクエストを送信します。
aws opensearchserverless update-account-settings \ --capacity-limits '{ "maxIndexingCapacityInOCU":8,"maxSearchCapacityInOCU":9}'
最大キャパシティの制限
コレクションに含めることができるインデックスの最大合計は 1000 です。3 種類のコレクションすべてにおいて、デフォルトの最大キャパシティは、インデックス作成用に 10 OCU、検索用に 10 OCU です。アカウントで利用可能な最小キャパシティは、インデックス作成用に 1 OCU [0.5 OCU x 2]、検索用に 1 OCU [0.5 OCU x 2] です。すべてのコレクションで許可される最大容量は、インデックス作成用に 1,700 OCUs、検索用に 1,700 OCUs。OCU の数は、1 から、最大許容キャパシティ (2 の倍数) までの任意の数に設定できます。
各 OCU には、120 GiB のインデックスデータを保存するのに十分なホットエフェメラルストレージが含まれています。OpenSearch Serverless は、検索およびベクトル検索コレクションのインデックスあたり最大 1 TiB のデータと、時系列コレクションのインデックスあたり最大 100 TiB のホットデータをサポートします。時系列コレクションの場合は、さらに多くのデータを取り込むことができ、S3 にウォームデータとして保存できます。
すべてのクォータのリストについては、「OpenSearch Serverless のクォータ」を参照してください。
キャパシティ使用量のモニタリング
SearchOCU および IndexingOCU におけるアカウントレベルの CloudWatch メトリクスをモニタリングして、コレクションでどのようにスケーリングされているかを把握できます。アカウントがキャパシティに関するメトリクスのしきい値に近づいた際に通知を行うアラームを設定することをお勧めします。そうすることで、状況に応じてキャパシティの設定を調整できます。
最大キャパシティの設定が適切か、または調整が必要どうかを判断するために、これらのメトリクスを使用することもできます。これらのメトリクスを分析することで、コレクションの効率を最適化することに集中できます。OpenSearch Serverless が CloudWatch に送信するメトリクスの詳細については、「Amazon OpenSearch Serverless のモニタリング」を参照してください。