Azure Cosmos DB の複数リージョンのコストを最適化する
適用対象: SQL API
Cassandra API
Gremlin API
Table API
MongoDB 用 Azure Cosmos DB API
お客様の Azure Cosmos アカウントのリージョンは、いつでも追加したり削除したりすることができます。 Azure Cosmos の各種のデータベースとコンテナーに対してお客様が構成したスループットは、お客様のアカウントに関連付けられている各リージョンで予約されます。 プロビジョニングされる 1 時間あたりのスループット (つまり、お客様の Azure Cosmos アカウントのすべてのデータベースとコンテナーに対して構成された RU/秒の合計) が T
で、お客様のデータベース アカウントに関連付けられている Azure リージョンの数が N
である場合、お客様の Cosmos アカウントにプロビジョニングされる 1 時間あたりの合計スループットは、T x N RU/s
に相当します。
プロビジョニング スループットのコストは、単一の書き込みリージョンの場合は 100 RU/秒で $0.008/時に、また複数の書き込みリージョンの場合は 100 RU/秒で $0.016/時になります。 詳細については、Azure Cosmos DB の価格に関するページを参照してください。
複数の書き込みリージョンにおけるコスト
マルチリージョン書き込みシステムでは、書き込み操作に利用できる正味 RU が N
倍になります (N
は書き込みリージョンの数)。 単一リージョンの書き込みとは異なり、すべてのリージョンが書き込み可能であり、競合の解決をサポートします。 コスト計画の観点から、M
RU/秒に相当する書き込みを全世界で実行するためには、コンテナー レベルまたはデータベース レベルで M RUs
をプロビジョニングする必要があります。 その後、望ましい数のリージョンを追加し、書き込みに使用することで、M
RU に相当する書き込みを全世界で実行できます。
例
1 つのリージョンの書き込み用に構成されたコンテナーが米国西部にあり、今月は 10,000 RU/s のスループットでプロビジョニングされ、0.5 TB のデータが格納されているとします。 ストレージとスループットが同じである米国東部リージョンを追加し、アプリから両方のリージョンのコンテナーに書き込む必要があると仮定します。 新しい月々の請求総額 (1 か月 730 時間と想定) は次のとおりです。
項目 | 使用量 (月単位) | 料金 | 毎月のコスト |
---|---|---|---|
米国西部のコンテナーのスループット料金 (1 つの書き込みリージョン) | 10,000 RU/s * 730 時間 | 100 RU/秒で 1 時間あたり $0.008 | $584 |
2 つのリージョン (米国西部と米国東部) のコンテナーのスループット料金 (複数の書き込みリージョン) | 2 * 10,000 RU/s * 730 時間 | 100 RU/秒で 1 時間あたり $0.016 | $2,336 |
米国西部のコンテナーのストレージ料金 | 0.5 TB (つまり 512 GB) | $0.25/GB | $128 |
2 つのリージョン (米国西部と米国東部) のコンテナーのストレージ料金 | 2 * 0.5 TB (つまり 1,024 GB) | $0.25/GB | $256 |
リージョン単位でスループット利用率を向上させる
利用率が低すぎる読み取りリージョンが 1 つ以上あるなど、利用に無駄がある場合は、読み取りリージョンの変更フィードを使用して、読み取りリージョンの RU を最大限に活用するようにします。または、利用率が高すぎる場合は別のセカンダリに移動します。 先に書き込みリージョンのプロビジョニング スループット (RU) を最適化する必要があります。 非常に大規模なクエリを除いて、読み取りよりも書き込みの方がコストがかかるため、使用量を均等に維持することは困難です。 全体的に、リージョンで消費されるスループットを監視してオンデマンドでリージョンを追加または削除し、読み取りおよび書き込みスループットをスケーリングすれば、同じリージョンにデプロイされるすべてのアプリの待機時間への影響を把握できます。
次のステップ
次は、先に進み、以下の各記事で Azure Cosmos DB でのコストの最適化の詳細について学習することができます。
- 開発とテストのための最適化の詳細について学習します
- Azure Cosmos DB の課金内容の確認の詳細について学習します
- スループット コストの最適化の詳細について学習します
- ストレージ コストの最適化の詳細について学習します
- 読み取りと書き込みのコストの最適化の詳細について学習します
- クエリ コストの最適化の詳細について学習します
- Azure Cosmos DB への移行のための容量計画を実行しようとしていますか? 容量計画のために、既存のデータベース クラスターに関する情報を使用できます。
- 既存のデータベース クラスター内の仮想コアとサーバーの数のみがわかっている場合は、仮想コア数または仮想 CPU 数を使用した要求ユニットの見積もりに関するページを参照してください
- 現在のデータベース ワークロードに対する通常の要求レートがわかっている場合は、Azure Cosmos DB Capacity Planner を使用した要求ユニットの見積もりに関するページを参照してください