Azure Cosmos DB Capacity Planner を使用して RU/秒を見積もる - Azure Cosmos DB for NoSQL

適用対象: NoSQL

注意

Azure Cosmos DB へのデータ移行を計画していて、知っていることが既存のシャード化およびレプリケートされたデータベース クラスター内の仮想コアとサーバーの数のみである場合、仮想コアまたは仮想 CPU を使用して要求ユニットを見積もる方法に関するページを参照してください。

ワークロードにとって適切な量のプロビジョニング済みスループット、つまり要求ユニット (RU/秒) を使用して Azure Cosmos DB データベースとコンテナーを構成することは、コストとパフォーマンスの最適化に不可欠です。 この記事では、Azure Cosmos DB Capacity Planner を使用して、Azure Cosmos DB for NoSQL の使用時にワークロードに必要な RU/秒とコストを見積もる方法について説明します。 Azure Cosmos DB for MongoDB を使用している場合は、RU/秒の見積もり - Azure Cosmos DB for MongoDB に関するページを参照してください。

キャパシティ プランナーのモード

  • Basic

    迅速で大まかな RU/秒とコストの見積もりを提供します。 このモードは、インデックス作成ポリシー、一貫性、およびその他のパラメーターに対して既定の Azure Cosmos DB 設定を前提としています。

    Azure Cosmos DB で実行できるワークロードの評価時に、迅速におおまかな見積もりを得るには基本モードを使用します。 詳しくは、基本モードでコストを見積もる方法に関するセクションをご覧ください。

  • 上級

    インデックス作成ポリシー、整合性レベル、コストとスループットに影響するその他のパラメーターを調整する機能があり、より詳細な RU/秒とコストの見積もりを提供します。

    新しいプロジェクトの RU/秒の見積もりを作成するか、より詳細な見積もりが必要なときは、詳細モードを使用します。 詳しくは、詳細モードでコストを見積もる方法に関するセクションをご覧ください。

基本モードを使用してプロビジョニング済みスループットとコストを見積もる

基本モードを使用してワークロードの見積もりを迅速に取得するには、Capacity Planner を開きます。 ワークロードに基づいて次のパラメーターを入力します。

入力 説明
API "Azure Cosmos DB for NoSQL" を選択します。
リージョンの数 Azure Cosmos DB は、すべての Azure リージョンで利用できます。 該当のワークロードに必要なリージョンの数を選択します。 ご使用の Azure Cosmos DB アカウントには、任意の数のリージョンを関連付けることができます。 詳細については、「Azure Cosmos DB を使用してデータをグローバルに分散させる」を参照してください。
マルチリージョンの書き込み マルチリージョンの書き込みを有効にすると、お使いのアプリケーションは任意の Azure リージョンに対して読み取りおよび書き込みを行うことができます。 マルチリージョンの書き込みを無効にすると、アプリケーションは単一リージョンに対してデータの書き込みを行うことができます。 さまざまなリージョンでの待機時間の短い書き込みを必要とするアクティブ/アクティブのワークロードが予期される場合は、マルチリージョンの書き込みを有効にしてください。 たとえば、さまざまなリージョンでデータベースにデータを大量に書き込む IOT ワークロードがあります。 マルチリージョンの書き込みでは、99.999% の読み取りと書き込みの可用性が保証されます。 マルチリージョンの書き込みでは、単一の書き込みリージョンと比べて、より多くのスループットが必要になります。 詳細については、「Azure Cosmos DB の複数リージョンのコストを最適化する」を参照してください。
トランザクション ストアに保存されているデータの合計 単一リージョン内のトランザクション ストアに保存されている推定データの合計 (GB)。
分析ストアを使用する 分析ストアを使用する場合は、 [オン] を選択します。 [分析ストアに保存されているデータの合計] を入力します。これは、単一のリージョン内の分析ストアに保存されている推定データ (GB) を表します。
アイテムのサイズ データ項目 (ドキュメントなど) の見積もりサイズ。
最大読み取りリージョンのポイント読み取り/秒 リージョンごとに 1 秒あたりに予想されるポイント読み取り操作数。 ポイントの読み取りは、1 つの項目 ID およびパーティション キーにおいてキーと値の参照を行うことです。 ポイント読み取りの詳細については、「データの読み取り: ポイント読み取りとクエリ」を参照してください。
すべてのリージョンにわたる作成/秒 リージョンごとに 1 秒あたりに予想される作成操作数。
すべてのリージョンにわたる更新/秒 リージョンごとに 1 秒あたりに予想される更新操作数。 自動インデックス作成を選択すると、更新操作の推定 RU/秒は、1 回の更新ごとに 1 つのプロパティが変更されるものとして計算されます。
すべてのリージョンにわたる削除/秒 リージョンごとに 1 秒あたりに予想される削除操作数。
すべてのリージョンにわたるクエリ/秒 リージョンごとに 1 秒あたりに予想されるクエリの数。 クエリを実行するための平均 RU 料金は、10 RU で推定されます。

必須の詳細を入力したら、[計算] を選択します。 [コスト見積もり] テーブルに、ストレージとプロビジョニング済みスループットの合計コストが表示されます。 [詳細の表示] リンクを展開すると、さまざまな CRUD やクエリ要求に必要なスループットの内訳を確認できます。 フィールドの値を変更するたびに、 [計算] を選択して見積もりコストを再計算してください。

Capacity Planner の基本モード

詳細モードを使用してプロビジョニング済みスループットとコストを見積もる

詳細モードでは、RU/秒の見積もりに影響する追加の設定を指定できます。 このオプションを使用するには、Capacity Planner に移動し、Azure 用に使用するアカウントでサインインします。 [サインイン] オプションは、右側の隅にあります。

サインインすると、基本モードのフィールドと比べてより多くのフィールドが表示されます。 他のパラメーターは、ご利用のワークロードに基づいて入力してください。

入力 説明
API Azure Cosmos DB は、マルチモデルおよびマルチ API のサービスです。 "Azure Cosmos DB for NoSQL" を選択します。
リージョンの数 Azure Cosmos DB は、すべての Azure リージョンで利用できます。 該当のワークロードに必要なリージョンの数を選択します。 ご使用の Azure Cosmos DB アカウントには、任意の数のリージョンを関連付けることができます。 詳細については、「Azure Cosmos DB を使用してデータをグローバルに分散させる」を参照してください。
マルチリージョンの書き込み マルチリージョンの書き込みを有効にすると、お使いのアプリケーションは任意の Azure リージョンに対して読み取りおよび書き込みを行うことができます。 マルチリージョンの書き込みを無効にすると、アプリケーションは単一リージョンに対してデータの書き込みを行うことができます。 さまざまなリージョンでの待機時間の短い書き込みを必要とするアクティブ/アクティブのワークロードが予期される場合は、マルチリージョンの書き込みを有効にしてください。 たとえば、さまざまなリージョンでデータベースにデータを大量に書き込む IOT ワークロードがあります。 マルチリージョンの書き込みでは、99.999% の読み取りと書き込みの可用性が保証されます。 マルチリージョンの書き込みでは、単一の書き込みリージョンと比べて、より多くのスループットが必要になります。 詳細については、「Azure Cosmos DB の複数リージョンのコストを最適化する」を参照してください。
既定の一貫性 Azure Cosmos DB は 5 つの一貫性レベルをサポートしていて、一貫性、可用性、待機時間のトレードオフのバランスを取ることができます。 詳細については、整合性レベルに関する記事を参照してください。 既定では、Azure Cosmos DB は [セッション] の一貫性を使用します。これは、セッションで自分の書き込みを読み取る機能を保証します。 [強固][有界整合性制約] を選択すると、[セッション][一貫性のあるプレフィックス][最終的] の一貫性と比べて、読み取りに必要な RU/秒が 2 倍になります。 マルチリージョンの書き込みでは [強固] の一貫性がサポートされていないため、強固な一貫性では既定で自動的に単一リージョンの書き込みになります。
インデックス作成ポリシー 既定では、Azure Cosmos DB は、柔軟で効率的なクエリを実行するために、すべての項目のすべてのプロパティのインデックス作成を行います。 この方法では、インデックス作成ポリシーは [自動] にマップされます。 [オフ] を選択すると、どのプロパティにもインデックスは作成されません。 この方法では、書き込みの RU 料金が最も低くなります。 ポイント読み取り (キー値の検索) と書き込みのみを実行し、クエリを実行しない予定の場合は、[オフ] を選択してください。 [自動] を選択すると、Azure CosmosDB によって、項目の書き込み時にそれらすべてのインデックスが自動的に作成されます。 [カスタム] インデックス作成ポリシーを使用すると、書き込みスループットとストレージの量を削減するために、特定のプロパティをインデックスに含めるかインデックスから除外できます。 詳細については、「Azure Cosmos DB のインデックス作成」および「インデックス作成ポリシーの例」を参照してください。
トランザクション ストアに保存されているデータの合計 単一リージョン内のトランザクション ストアに保存されている推定データの合計 (GB)。
分析ストアを使用する 分析ストアを使用する場合は、 [オン] を選択します。 [分析ストアに保存されているデータの合計] を入力します。これは、単一のリージョン内の分析ストアに保存されている推定データ (GB) を表します。
ワークロード モード ワークロードのボリュームが一定の場合は、 [Steady](安定) を選択します。 ワークロード ボリュームが時間とともに (特定の日や月の間などに) 変化する場合は、[変動] を選択します。 [変動] オプションを選択した場合は、[Percentage of time at peak] (ピーク時の時間のパーセンテージ) 設定を使用できます。
Percentage of time at peak (ピーク時の時間のパーセンテージ) [変動] ワークロード オプションを指定した場合にのみ使用できます。 ワークロードでピーク (最高) のスループットが必要となる、1 か月間の時間のパーセンテージ。 たとえば、午前 9 時から午後 6 時の平日の営業時間中に高アクティビティになるワークロードがある場合、ピーク時の時間のパーセンテージは (9 hours per weekday at peak * 5 days per week at peak) / (24 hours per day at peak * 7 days in a week) = 45 / 168 = ~27% になります。 ピーク時とオフピーク時の間隔を使って、それに応じてプロビジョニング済みスループットをプログラムで拡大縮小することで、コストを最適化できます。
アイテムのサイズ データ項目 (ドキュメントなど) のサイズ。 複数のサンプル項目について見積もりを追加できます。 また、より正確な見積もりを得るために、サンプル (JSON) ドキュメントをアップロードすることもできます。 ワークロードが JSON コンテンツが異なる複数の種類の項目を同じコンテナー内に持つ場合は、複数の JSON ドキュメントをアップロードして、見積もりを取得できます。 複数のサンプル JSON ドキュメントを追加するには、[新しい項目の追加] を選択します。
プロパティの数 項目あたりのプロパティの平均数
1 秒あたりのポイント読み取り数 リージョンごとに 1 秒あたりに予想されるポイント読み取り操作数。 ポイントの読み取りは、1 つの項目 ID およびパーティション キーにおいてキーと値の参照を行うことです。 ポイント読み取り操作は、クエリ読み取り操作とは異なります。 ポイント読み取りの詳細については、「データの読み取り: ポイント読み取りとクエリ」を参照してください。 ワークロード モードが [Variable](変動) の場合、ピークおよびオフ ピーク時に予想されるポイント読み取り操作数を指定できます。
1 秒あたりの作成数 リージョンごとに 1 秒あたりに予想される作成操作数。
1 秒あたりの更新数 リージョンごとに 1 秒あたりに予想される更新操作数。
1 秒あたりの削除数 リージョンごとに 1 秒あたりに予想される削除操作数。
クエリ数/秒 リージョンごとに 1 秒あたりに予想されるクエリの数。 正確な見積もりを行うには、クエリの平均コストを使用するか、Azure portal のクエリ統計から、クエリで使用する RU/秒を入力します。
クエリあたりの RU/秒の平均的な料金 既定では、リージョンあたりのクエリ数/秒の平均コストは 10 RU/秒で見積もられます。 見積もられたクエリ料金に基づいた RU/秒の料金に応じて、それを増減することができます。

Capacity Planner の詳細モード

Azure Cosmos DB Capacity Planner に表示される価格は、スループットとストレージの公開価格料金に基づいた見積もりです。 すべての価格は米ドルで表示されます。 リージョン別にすべての料金を確認するには、Azure Cosmos DB の価格のページを参照してください。

次のステップ