AWS の請求および使用状況レポートを理解するためのベストプラクティス - Amazon DynamoDB

AWS の請求および使用状況レポートを理解するためのベストプラクティス

このドキュメントでは、DynamoDB に関連する UsageType 料金の請求コードについて説明します。

AWS は、使用したサービスのデータを含む請求および使用状況レポート (CUR) を提供します。AWS Cost and Usage Report を使用して、請求レポートを CSV 形式で Amazon S3 に公開できます。CUR を設定する際は、時間単位、日単位、または月単位で期間を分割したり、使用量をリソース ID ごとに分割するかどうかを選択できます。CUR の生成の詳細については、「Creating Cost and Usage Reports」を参照してください。

CSV エクスポートでは、各行に関連する属性が一覧表示されます。レポートに含まれる属性の例を以下に示します。

  • lineitem/UsageStartDate: 明細項目の開始日時 (UTC、その時刻を含む)。

  • lineitem/UsageEndDate: 対応する明細項目の終了日時 (UTC、その時刻は含まない)。

  • lineitem/ProductCode: DynamoDB では「AmazonDynamoDB」。

  • lineitem/UsageType: このドキュメントに列挙されている使用タイプの説明コード。

  • lineitem/Operation: 料金が発生したオペレーション名などの請求項目の情報 (オプション)。

  • lineitem/ResourceId: 使用されたリソースの識別子。CUR にリソース ID 別の内訳が含まれている場合に表示されます。

  • lineitem/UsageAmount: 指定した期間に発生した使用量。

  • lineitem/UnblendedCost: この使用量の料金。

  • lineitem/LineItemDescription: 各明細項目の説明。

CUR データディクショナリの詳細については、「Cost and Usage Report (CUR) 2.0」を参照してください。正確な名前はコンテキストによって異なることに注意してください。

UsageType は、ReadCapacityUnit-HrsUSW2-ReadRequestUnitsEU-WriteCapacityUnit-HrsUSE1-TimedPITRStorage-ByteHrs などの値を持つ文字列です。各使用タイプは、オプションのリージョンプレフィックスで始まります。プレフィックスがない場合、us-east-1 リージョンであることを示します。以下の表では、簡易的な請求リージョンコードを従来のリージョンコードとリージョン名にマッピングしています。

例えば、USW2-ReadRequestUnits という使用は、us-west-2 で消費される読み取りリクエストユニットを示します。

請求リージョンコード リージョンコード リージョン名
AFS1 af-south-1 アフリカ (ケープタウン)
APE1 ap-east-1 アジアパシフィック (香港)
APN1 ap-northeast-1 アジアパシフィック (東京)
APN2 ap-northeast-2 アジアパシフィック (ソウル)
APN3 ap-northeast-3 アジアパシフィック (大阪)
APS1 ap-south-1 アジアパシフィック(ムンバイ)
APS2 ap-south-2 アジアパシフィック (ハイデラバード)
APS3 ap-southeast-1 アジアパシフィック (シンガポール)
APS4 ap-southeast-2 アジアパシフィック (シドニー)
APS5 ap-southeast-3 アジアパシフィック (ジャカルタ)
APS6 ap-southeast-4 アジアパシフィック (メルボルン)
CAN1 ca-central-1 カナダ (中部)
EU eu-central-1 欧州 (フランクフルト)
EUC1 eu-central-2 欧州 (チューリッヒ)
EUN1 eu-north-1 欧州 (ストックホルム)
EUS1 eu-south-1 欧州 (ミラノ)
EUS2 eu-south-2 欧州 (スペイン)
EUW1 eu-west-1 欧州 (アイルランド)
EUW2 eu-west-2 欧州 (ロンドン)
EUW3 eu-west-3 欧州 (パリ)
ILC1 il-central-1 イスラエル (テルアビブ)
MEC1 me-central-1 中東 (アラブ首長国連邦)
MES1 me-south-1 中東 (バーレーン)
SAE1 sa-east-1 南米(サンパウロ)
USE1 (デフォルト) us-east-1 米国東部 (バージニア北部)
USE2 us-east-2 米国東部(オハイオ)
UGE1 us-gov-east-1 米国東部政府
UGW1 us-gov-west-1 米国西部政府
USW1 us-west-1 米国西部(北カリフォルニア)
USW2 us-west-2 米国西部(オレゴン)

以下のセクションでは、REG-UsageType パターンを使用して DynamoDB の料金を表示します。REG は使用が発生したリージョンを示し、usageType は請求タイプのコードを示します。例えば、CSV ファイルに USW1- ReadCapacityUnit-Hrs という明細項目がある場合、その項目は US-west-1 でプロビジョニングされた読み込みキャパシティの使用量が発生したことを示します。この場合、リストには「REG-ReadCapacityUnit-Hrs」と表示されます。

スループット容量

プロビジョニングされたキャパシティの読み取りと書き込み

DynamoDB テーブルをプロビジョンドキャパシティモードで作成する場合、アプリケーションに必要と想定される読み取りキャパシティを指定します。使用タイプはテーブルクラス (Standard または Standard-Infrequent Access) によって異なります。1 秒あたりの使用率に基づいて読み取りと書き込みをプロビジョニングしますが、料金はプロビジョニングされた容量に基づいて時間単位で課金されます。

UsageType 単位 詳細度 説明
REG-ReadCapacityUnit-Hrs RCU 時 Standard テーブルクラスを使用するプロビジョンドキャパシティモードでの読み取りに対して発生する料金。
REG-IA-ReadCapacityUnit-Hrs RCU 時 Standard-IA テーブルクラスを使用するプロビジョンドキャパシティモードでの読み取りに対して発生する料金。
REG-WriteCapacityUnit-Hrs WCU 時 Standard テーブルクラスを使用するプロビジョンドキャパシティモードでの書き込みに対して発生する料金。
REG-IA-WriteCapacityUnit-Hrs WCU 時 Standard-IA テーブルクラスを使用するプロビジョンドキャパシティモードでの書き込みに対して発生する料金。

リザーブドキャパシティの読み取りと書き込み

リザーブドキャパシティでは、1 回限りの前払い料金を支払い、期間中、プロビジョニングされた最小使用レベルを支払う契約を結びます。リザーブドキャパシティは、割引された時間単位の料金で請求されます。リザーブドキャパシティを超えてプロビジョニングしたキャパシティには、標準のプロビジョンされたキャパシティの料金が請求されます。リザーブドキャパシティは、Standard テーブルクラスを使用する DynamoDB テーブルの単一リージョンのプロビジョニングされた読み取りおよび書き込みキャパシティユニット (RCU および WCU) で使用できます。1 年および 3 年のリザーブドキャパシティはどちらも同じ SKU を使用して請求されます。

UsageType 単位 詳細度 説明
REG-HeavyUsage:dynamodb.read RCU 時 前払い、その後月払い リザーブドキャパシティの読み取り料金: 1 回限りの前払い料金と、割引されたコミット済みの RCU 時をすべてカバーする月額料金が毎月請求されます。対応するゼロコスト REG-ReadCapacityUnit-Hrs 明細項目が表示されます。
REG-HeavyUsage:dynamodb.write WCU 時 前払い、その後月払い リザーブドキャパシティの書き込み料金: 1 回限りの前払い料金と、割引されたコミット済みの WCU 時をすべてカバーする月額料金が毎月請求されます。対応するゼロコスト REG-WriteCapacityUnit-Hrs 明細項目が表示されます。

オンデマンドキャパシティの読み取りと書き込み

DynamoDB テーブルをオンデマンドキャパシティモードで作成する場合、アプリケーションが実行する読み取りと書き込みに対してのみ料金が発生します。読み取りリクエストと書き込みリクエストの料金は、テーブルクラスによって異なります。

UsageType 単位 詳細度 説明
REG-ReadRequestUnits RRU 単位 Standard テーブルクラスを使用するオンデマンドキャパシティモードでの読み取りに対して発生する料金。
REG-IA-ReadRequestUnits RRU 単位 Standard-IA テーブルクラスを使用するオンデマンドキャパシティモードでの読み取りに対して発生する料金。
REG-WriteRequestUnits WRU 単位 Standard テーブルクラスを使用するオンデマンドキャパシティモードでの書き込みに対して発生する料金。
REG-IA-WriteRequestUnits WRU 単位 Standard-IA テーブルクラスを使用するオンデマンドキャパシティモードでの書き込みに対して発生する料金。

グローバルテーブルの読み取りと書き込み

DynamoDB では、各レプリカテーブルで使用されているリソースに基づいてグローバルテーブルの使用料金が請求されます。プロビジョニングされたグローバルテーブルの場合、グローバルテーブルへの書き込みリクエストは標準 WCU ではなくレプリケート WCU (rWCU) で測定され、グローバルテーブルのグローバルセカンダリインデックスへの書き込みは WCU で測定されます。オンデマンドグローバルテーブルでは、書き込みリクエストは標準 WRU ではなくレプリケート WRU (rWRU) で測定されます。レプリケーションに使用される rWCU の数または rWRU の数は、使用しているグローバルテーブルのバージョンによって異なります。料金は、テーブルクラスによって異なります。

グローバルセカンダリインデックス (GSI) への書き込みは、標準書き込み単位 (WCU と WRU) を使用して請求されます。読み取りリクエストとデータストレージは、単一リージョンのテーブルと同様に請求されます。

テーブルレプリカを追加して新しいリージョンでグローバルテーブルを作成または拡張した場合、DynamoDB では、復元されたデータ 1 GB ごとに、追加されたリージョンのテーブル復元に対して料金が請求されます。復元されたデータは REG-RestoreDataSize-Bytes として請求されます。詳細については、「DynamoDB のオンデマンドバックアップおよび復元の使用」を参照してください。クロスリージョンレプリケーションや、データを含むテーブルへのレプリカの追加にも、データ転送の料金が発生します。

DynamoDB グローバルテーブルでオンデマンドキャパシティモードを選択すると、各レプリカテーブルでアプリケーションが使用するリソースに対してのみ請求されます。

UsageType 単位 詳細度 説明
REG-ReplWriteCapacityUnit-Hrs rWCU 時 グローバルテーブル、プロビジョンド、Standard テーブルクラス。
REG-IA-ReplWriteCapacityUnit-Hrs rWCU 時 グローバルテーブル、プロビジョンド、Standard-IA テーブルクラス。
REG-ReplWriteRequestUnits rWRU 単位 グローバルテーブル、オンデマンド、Standard テーブルクラス。
REG-IA-ReplWriteRequestUnits rWRU 単位 グローバルテーブル、オンデマンド、Standard- IA テーブルクラス。

Streams

DynamoDB には、DynamoDB Streams と Kinesis という 2 つのストリーミングテクノロジーがあります。これらは、それぞれ料金が異なります。

DynamoDB Streams では、読み取りリクエストユニットでのデータ読み取りに対して料金が発生します。各 GetRecords API コールは、ストリーム読み取りリクエストとして請求されます。DynamoDB トリガーの一部として GetRecords から、またはレプリケーションの一部として DynamoDB グローバルテーブルから呼び出される AWS Lambda API コールに対しては、料金は発生しません。

UsageType 単位 詳細度 説明
REG-Streams-RequestsCount カウント 単位 DynamoDB Streams の読み取りリクエストユニット。

Amazon Kinesis Data Streams では、データキャプチャユニットに対して料金が発生します。DynamoDB では、書き込みごとに 1 つの変更データキャプチャユニットが請求されます (最大 1 KB)。1 KB を超えるアイテムには、追加の変更データキャプチャユニットが必要です。テーブルのスループットキャパシティの管理なしに、アプリケーションが実行した書き込みに対してのみ料金が発生します。

UsageType 単位 詳細度 説明
REG-ChangeDataCaptureUnits-Kinesis CDC ユニット 単位 Kinesis Data Streams の変更データキャプチャユニット。

[Storage (ストレージ)]

DynamoDB は、データの RAW バイトサイズと有効化した特徴量に応じて、項目あたりのストレージオーバーヘッドを加算して、請求対象データのサイズを測定します。

注記

DescribeTable はアイテムごとのストレージオーバーヘッドを含まないため、CUR のストレージ使用量は DescribeTable 使用時のストレージ使用量と比較して高くなります。

ストレージは 1 時間単位で計算されますが、1 時間あたりの料金の平均から計算され、月単位で課金されます。

UsageType ストレージは ByteHrs をサフィックスとして使用しますが、CUR のストレージ使用量は GB 単位で測定され、料金は GB 月単位です。

UsageType 単位 詳細度 説明
REG-TimedStorage-ByteHrs GB Standard テーブルクラスのテーブルで、DynamoDB テーブルとインデックスが使用するストレージの容量。
REG-IA-TimedStorage- ByteHrs GB Standard-IA テーブルクラスのテーブルで、DynamoDB テーブルとインデックスが使用するストレージの容量。

バックアップと復元

DynamoDB には、ポイントインタイムリカバリ (PITR) バックアップとオンデマンドバックアップの 2 種類のバックアップがあります。ユーザーは、これらのバックアップから DynamoDB テーブルに復元することもできます。以下の料金は、バックアップと復元の両方を対象としています。

バックアップストレージの料金は各月の初日に発生し、バックアップが追加または削除されるたびに調整されます。詳細については、「Understanding Amazon DynamoDB On-demand Backups and Billing」のブログ記事を参照してください。

UsageType 単位 詳細度 説明
REG-TimedBackupStorage-ByteHrs GB DynamoDB テーブルとローカルセカンダリインデックスのオンデマンドバックアップで消費されるストレージ。
TimedPITRStorage-ByteHrs GB ポイントインタイムリカバリ (PITR) バックアップで使用されるストレージ。PITR が有効である間、DynamoDB では、PITR が有効化されているテーブルサイズの 1 か月間の継続的なモニタリングに基づいてバックアップ料金が決定されます。
REG-RestoreDataSize-Bytes GB サイズ DynamoDB バックアップから復元されたデータ (テーブルデータ、ローカルセカンダリインデックス、グローバルセカンダリインデックスを含む) の合計サイズ (GB 単位)。

AWS Backup

AWS Backup はフルマネージド型のバックアップサービスで、クラウドおよびオンプレミスの AWS サービス間でデータのバックアップを簡単に一元化および自動化できます。AWS Backup は、ストレージ (ウォームストレージまたはコールドストレージ)、復元作業、およびリージョン間のデータ転送に対して請求されます。以下の UsageType 料金は、「AmazonDynamoDB」ではなく「AWSBackup」ProductCode の下に表示されます。

UsageType 単位 詳細度 説明
REG-WarmStorage- ByteHrs-DynamoDB GB 1 か月を通して AWS Backup で管理される DynamoDB バックアップによって使用されたストレージ (GB-月単位)。
REG-CrossRegion-WarmBytes-DynamoDB GB サイズ 同一アカウントの異なる AWS リージョン、または異なる AWS アカウントに転送されたデータ。クロスリージョン転送の料金は、あるリージョンから別のリージョンにバックアップをコピーする際に発生します。料金は常にデータの転送元のアカウントに請求されます。
REG-Restore-WarmBytes-DynamoDB GB サイズ ウォームストレージから復元されたデータの合計サイズ。GB 単位で測定されます。
REG-ColdStorage-ByteHrs-DynamoDB GB 1 か月を通して AWS Backup で管理される DynamoDB バックアップによって使用されたコールドストレージ (GB-月単位)。
REG-Restore-ColdBytes-DynamoDB GB コールドストレージから復元されたデータの合計サイズ。GB 単位で測定されます。

エクスポートおよびインポート

DynamoDB から Amazon S3 にデータをエクスポートしたり、Amazon S3 から新しい DynamoDB テーブルにデータをインポートしたりすることができます。

UsageTypeBytes をサフィックスとして使用しますが、CUR のエクスポートとインポートの使用量は GB 単位で測定され請求されます。

UsageType 単位 詳細度 説明
REG-ExportDataSize-Bytes GB サイズ S3 へのデータエクスポートの料金。DynamoDB でのデータエクスポートは、エクスポートが作成された時点の DynamoDB ベーステーブル (テーブルデータおよびローカルセカンダリインデックス) のサイズに基づいて課金されます。
REG-ImportDataSize-Bytes GB サイズ S3 からのデータインポートの料金。サイズは、Amazon S3 のデータのオブジェクトの非圧縮サイズに基づいて計算されます。GSI を使用したテーブルへのインポートには追加料金はかかりません。
REG-IncrementalExportDataSize-Bytes GB サイズ 継続バックアップから増分エクスポートを行うために処理されたデータのサイズに基づく料金。

データ転送

データ転送アクティビティは DynamoDB サービスに関連して表示される場合があります。DynamoDB では、インバウンドデータ転送の料金は発生しません。また、DynamoDB と同じ AWS リージョン内の他の AWS サービスとの間のデータ転送の料金も発生しません (つまり、GB あたり 0.00 USD)。AWS リージョン間 (米国東部 [バージニア北部] リージョンの DynamoDB と欧州 [アイルランド] リージョンの Amazon EC2 間など) で転送されるデータは、転送元と転送先の両方で料金が発生します。

UsageType 単位 詳細度 説明
REG-DataTransfer-In-Bytes GB 単位 インターネットから DynamoDB へのデータ転送。
REG-DataTransfer-Out-Bytes GB 単位 DynamoDB からインターネットへのデータ転送。

CloudWatch Contributor Insights

CloudWatch Contributor Insights for DynamoDB は、DynamoDB テーブルで最も頻繁にアクセスされスロットリングされるキーを特定する診断ツールです。以下の UsageType 料金は、「AmazonDynamoDB」ではなく「AmazonCloudWatch」ProductCode の下に表示されます。

UsageType 単位 詳細度 説明
REG-CW:ContributorEventsManaged 処理されたイベント 単位 処理された DynamoDB イベントの量。例えば、CloudWatch Contributor Insights が有効になっているテーブルでは、アイテムが読み書きされるたびに 1 イベントとしてカウントされます。テーブルにソートキーがある場合は、2 イベントとしてカウントされます。
REG-CW:ContributorRulesManaged ルール数 Cloud Watch Contributor Insights を有効にすると、DynamoDB は最もアクセス数の多いアイテムと最もスロットリングされたキーを識別するルールを作成します。この料金は、CloudWatch contributor insights のログ用に設定された各エンティティ (テーブルおよび GSI) に追加されたルールに対して発生します。

DynamoDB Accelerator (DAX)

DynamoDB Accelerator (DAX) は、サービスで選択されたインスタンスタイプに基づいて時間単位で請求されます。以下の料金は、プロビジョニングされた DynamoDB Accelerator インスタンスに関するものです。以下の UsageType 料金は、「AmazonDynamoDB」ではなく「AmazonDAX」ProductCode の下に表示されます。

UsageType 単位 詳細度 説明
REG-NodeUsage:dax-<INSTANCETYPE> ノード時間 特定のインスタンスタイプの 1 時間あたりの使用量。料金は、ノードが起動されてから終了するまでの、消費されたノード時間あたりの価格です。消費されたノード時間が 1 時間に満たない場合でも、1 時間分として請求されます。DAX は DAX クラスター内のノードごとに課金されます。クラスターに複数のノードがある場合、請求レポートには複数の明細項目が表示されます。

インスタンスタイプは、次の表のような値になります。ノードタイプの詳細については、「ノード」を参照してください。

<INSTANCETYPE>

r3.2xlarge r4.8xlarge r5.8xlarge
r3.4xlarge r4.large r5.large
r3.8xlarge r4.xlarge r5.xlarge
r3.2xlarge r5.12xlarge t2.medium
r3.4xlarge r4.large r5.large
r3.xlarge r5.16xlarge t2.small
r4.16xlarge r5.24xlarge t3.medium
r4.2xlarge r5.2xlarge t3.small
r4.4xlarge r5.4xlarge