Pub/Sub の料金
Pub/Sub の費用は次の 3 つの要素で構成されます。
- メッセージのパブリッシュと配信のスループット費用
- Google Cloud のゾーンまたはリージョンの境界を超えるスループットに関連するデータ転送の費用
- スナップショット、トピックによって保持されたメッセージ、サブスクリプションによって保持される確認応答済みメッセージのストレージ費用
Pub/Sub サービスの料金は、使用量(パブリッシュ、配信、または保存されたバイト数)に基づきます。
これに対して、Pub/Sub Lite のスループットとストレージの料金は、予約済みの容量に基づきます。
どちらのサービスのデータ転送も、予約済みの容量ではなく使用量に基づきます。
前提条件
このドキュメントでは、Pub/Sub または Pub/Sub Lite のアーキテクチャと、各プロダクトに含まれる一般的な用語を理解している必要があります。詳細については、Pub/Sub アーキテクチャをご覧ください。
料金の例
次の表は、北米でのサンプル読み込みに関する Pub/Sub システムと Pub/Sub Lite システムの月額費用を比較したものです。この例では、メッセージの保存期間が 24 時間、Pub/Sub Lite のリソース使用率は 50%、Pub/Sub のサブスクリプション タイプには pull または push を想定しています。その他の種類のサブスクリプションでは、追加費用が発生する場合があります。
パブリッシュのスループット(MiBps) | サブスクリプションの数 | ゾーン Lite トピック | リージョン Lite トピック | Pub/Sub |
---|---|---|---|---|
10 | 1 | $169 | 608 ドル | $2,000~ |
10 | 2 | $214 | 788 ドル | $3,000 |
100 | 1 | $1,688 | 6,075 ドル | $19,760 |
100 | 2 | $2,138 | 7,875 ドル | $29,640 |
Pub/Sub と Pub/Sub Lite の費用を比較する場合は、2 つのプロダクトの機能の違いを考慮してください。詳細については、Pub/Sub または Pub/Sub Lite の選択をご覧ください。
Pub/Sub サービスの料金
このセクションの料金の詳細は、Pub/Sub にのみ適用され、Pub/Sub Lite には適用されません。このセクションでは次のトピックについて説明します。
スループットの費用
スループットは、一定の期間内に Pub/Sub トピックに書き込まれたバイト数(パブリッシュのスループット)またはサブスクリプションからトピックへの読み取り(サブスクライブのスループット)の合計バイト数です。
毎月、請求先アカウントの Message Delivery Basic SKU として識別される最初の 10 GiB のスループットは無料です。それ以降の料金は、すべての Google Cloud リージョンで TiB あたり$40 です。ただし、BigQuery サブスクリプションを使用している場合は、次のセクションをご覧ください。
BigQuery サブスクリプションのスループットの費用
BigQuery サブスクリプションでは、サブスクリプションからの読み取り(サブスクライブのスループット)と BigQuery への書き込みに対して、すべての Google Cloud リージョンにおいて TiB あたり$50 の料金がかかります。BigQuery データ取り込みに追加料金はかかりません。ただし、ストレージやデータ抽出など、他のタイプの BigQuery 料金が適用されます。詳細については、BigQuery の料金をご覧ください。BigQuery サブスクリプションのスループットの最初の 10 GiB は無料ではありません。
Cloud Storage サブスクリプションのスループットの費用
Cloud Storage サブスクリプションでは、すべての Google Cloud リージョンにおいて、サブスクリプションからの読み取り(サブスクライブのスループット)と Cloud Storage への書き込みに TiB あたり$50 の料金がかかります。Cloud Storage サブスクリプションがバケットにファイルを書き込むと、他のタイプの追加料金が適用される場合があります。これには、ストレージ、取得、レプリケーションなどの料金が含まれます。詳しくは、Cloud Storage の料金をご覧ください。Cloud Storage サブスクリプションのスループットの最初の 10 GiB は無料ではありません。
インポート トピックのスループットの費用
外部ソースから Pub/Sub にデータを取り込む(パブリッシュ スループット)ためのすべての Google Cloud リージョンで、インポート トピック(Kinesis Data Streams)の場合は TiB あたり$50 の費用が発生します。インポート トピックで Pub/Sub トピックにデータを取り込むと、他のタイプのソース固有の追加料金が適用される場合があります。これには、Kinesis Data Streams ソースに対する AWS からの下り(外向き)などの料金が含まれます。Cloud Storage サブスクリプションのスループットの最初の 10 GiB は無料ではありません。
メッセージの量の計算
メッセージのデータ量は、次のメッセージ属性のサイズの合計になります。
- エンコードされたメッセージ本文の文字列のバイト数
- 各属性のキーとその値のサイズ
- タイムスタンプの 20 バイト
message_id
文字列のサイズ- 追加のオプション フィールド(早期アクセスやその他のアクセス制限のある API に関連付けられたフィールドなど)のサイズ。
リクエストのメッセージ サイズに関係なく、リクエストごとに最小 1 KB が評価されます。したがって、1 KB 未満のメッセージの場合は、1 回のリクエストで複数のメッセージをバッチ処理するほうが低コストです。
ストレージの費用
サブスクリプション内の確認応答されていないメッセージは、最大 7 日間無料で保存されます。
Pub/Sub ストレージが無料ではないケースは 3 つあります。以下に対して、1 GiB あたり月額 $0.27 のストレージ料金が発生します。
- トピックが、すべてのメッセージを保持するように構成されている。この場合は、トピックに公開されたすべてのメッセージを保存するためのメッセージ ストレージ料金が発生します。
- サブスクリプションが確認済みメッセージを保持するように構成されている。この場合は、保持される確認済みメッセージのストレージ料金が発生します。
- サブスクリプションのスナップショットが作成される。この場合、スナップショットの未確認メッセージが保存され、その分のメッセージのストレージ料金が発生します。
注: さらに、スナップショットを作成する際に、サブスクリプションに未確認メッセージのバックログが存在する場合は、そのバックログを 7 日間保持する場合と同等の料金が 1 回だけ発生します。
個々のサブスクリプションに確認済みメッセージを保持すると、サブスクリプション オーナーに対しては最も柔軟に対応できますが、通常これは最も高価な保存方法です。最も費用がかからない保存方法はトピック保持です。トピックに対して保持されるメッセージは、トピックに結び付けられたすべてのサブスクリプションで、サブスクリプションごとに追加料金なしで使用できます。また、スナップショットも、1 つのスナップショットが複数のサブスクリプションで使用できるため、経済的オプションになります。
データ転送の費用
Google Cloud リージョン間のインターネット データ転送とメッセージ配信の料金は、VPC ネットワークの料金と同じですが、以下の例外があります。
- Pub/Sub の使用に対してゾーンデータ転送料金は発生しません。
- Google サービスへの下り(外向き)はデータ転送料金から除外されません。
- Pub/Sub へのデータ転送の料金はかかりません。たとえば、パブリッシャーが別のリージョンまたはゾーンにいる場合は、元のサービスのデータ転送料金を支払う必要がありますが、インバウンドのデータ転送料金は必要ありません。同様に、パブリッシャーがアマゾン ウェブ サービス(AWS)またはプライベート データセンターからパブリッシュしている場合、Pub/Sub にデータ転送料金を支払う必要はありません。
メッセージがリージョンの境界を超えるたびに、データ転送に対して課金されます。メッセージが保存されるリージョンとは異なるリージョンに複数のサブスクライバーが存在する場合、各サブスクライバーへの配信に対して個別にデータ転送料金が課金されます。
メッセージ ストレージ ポリシーによるデータ転送費用
メッセージ ストレージ ポリシーにより、データが Google Cloud リージョンから強制的に外に送られる場合、追加のリージョン データ転送料金が発生する可能性があります。たとえば、次のイベントを含むメッセージについて考えてみましょう。
- リージョン A でパブリッシュされる
- リージョン BB のストレージに転送される
- リージョン CC のサブスクライバー クライアントに配信される
この場合の課金シナリオは次のとおりです。
- トピックを含むプロジェクトは、リージョン A からリージョン B へのデータ転送に対して課金されます。
- サブスクリプションを含むプロジェクトは、リージョン B からリージョン C へのデータ転送に対して課金されます。BB
トピックを含むプロジェクトは、メッセージがパブリッシュされたリージョンとは異なるリージョンに保存される場合にのみデータ転送料金が発生します(つまり、B は実際には A とは異なるリージョンです)。サブスクリプションを含むプロジェクトは、パブリッシュされたメッセージがサブスクライバー クライアントとは異なるリージョンに保存されている場合にのみデータ転送料金が発生します(C は B とは異なります)。
フィルタされたメッセージの費用
Pub/Sub は、フィルタに一致しないメッセージの確認応答を自動的に行いますが、これらのメッセージにはスループット料金が発生します。フィルタされたメッセージには データ転送料金は発生しません
最小サイズ(1,000 バイト)は、Pub/Sub サービスが自動的に確認するメッセージには適用されません。メッセージ配信料金は、これらのメッセージのバイト数に基づいており、メッセージの小さいサイズに依存していません。
プロジェクト間の Pub/Sub 課金
複数のプロジェクトにわたって Pub/Sub を使用している場合は、リクエストしたリソースを含むプロジェクトに対して Pub/Sub 料金が請求されます。
- パブリッシュに対して課金されるのは、トピックを含むプロジェクトです。
- サブスクリプションに対して課金されるのは、サブスクリプションを含むプロジェクトです。
たとえば、サブスクリプションがプロジェクト A に含まれている場合は、サブスクリプションがプロジェクト B 内のトピックに関連付けられていても、サブスクリプションから取得されるデータの料金はプロジェクト A に課金されます。
プロジェクト A の承認済みサービス アカウントが、プロジェクト B のサブスクリプションからのメッセージを使用する場合、サブスクリプションから取得されるデータの料金はプロジェクト Bに課金されます。
Pub/Sub Lite サービスの料金
以下の料金の詳細は Pub/Sub Lite にのみ適用され、Pub/Sub には適用されません。特に指定しない限り、詳細はゾーンとリージョンの両方の Lite トピックに適用されます。以下のセクションが含まれています。
スループットの費用
スループットは、一定期間における Pub/Sub Lite トピックへの書き込みバイト数(パブリッシュ スループット)またはサブスクリプションからトピックへの読み取り(サブスクライブ スループット)の合計バイト数です。
Pub/Sub Lite のスループット料金は、実際のスループット(MiBps)や請求対象期間の合計バイト数(1 か月あたりの MiB)ではなく、プロビジョニングまたは予約されたスループット容量に基づきます。スループット容量は容量単位でプロビジョニングされ、課金されます。Lite 予約を使用して、同じリージョン内の 1 つ以上のトピックにスループット容量をプロビジョニングできます。
次の表に、Pub/Sub Lite システムのスループットとストレージの費用を示します。
Lite 予約によるスループット
Lite 予約は、リージョン内の 1 つまたは複数のトピック間でスループット容量を予約して共有する方法です。リージョン Pub/Sub Lite トピックには Lite 予約が必要です。
Lite 予約のスループット容量は容量単位で測定されます。予約には整数の容量ユニットしかプロビジョニングできません。次の表に示すように、オペレーションのスループットごとに異なる数の容量単位が必要になります。
容量の単位は必須です | ゾーン Lite トピック | リージョン Lite トピック |
---|---|---|
1 MiBps のパブリッシュ スループット | 1 容量ユニット | 4 容量ユニット |
1 MiBps のサブスクライブのスループット | 0.5 容量ユニット | 容量ユニット 2 個 |
予約内のすべての Lite トピックのパーティション数は、予約した容量ユニットの数以下にする必要があります。
予約がある単一トピックのスループット容量の費用を計算する
次のセクションは、予約を使用する単一のゾーン Lite トピックのスループット容量の費用を計算する際に役立ちます。
- トピックのタイプ = ゾーン Lite トピック
- トピック数 = 1
- パーティション数 = 5
- ピーク時のパブリッシュ スループット = 5 MiBps
- パブリッシュのスループットに必要な容量ユニット = 5
- ピーク時のサブスクライブのスループット = 10 MiBps
- サブスクライブのスループットに必要な容量ユニット = 5
- 必要な合計容量単位 = 5 + 5 = 10
- 10 キャパシティ ユニット(北米)の 1 か月あたりの費用 = $45
5 つのパーティションを持つリージョン Lite トピックで同じスループットを得るには、40 の容量ユニット(パブリッシュ スループットに 20、サブスクライブ スループットに 20)の予約が必要です。
予約の容量ユニット数はいつでも変更できます。ただし、過去 24 時間にプロビジョニングされた最大容量に対して課金されます。たとえば、月曜日の午前 10 時に予約の容量を 40 から 10 の容量ユニットに変更すると、火曜日の午前 10 時までは 1 時間あたり 40 の容量ユニットが課金され、それ以降は 1 時間あたり 10 の容量ユニットに対して課金されます。
予約の容量は、予約と同じリージョン内の任意のトピックでのパブリッシュとサブスクライブのスループットに使用できます。予約の詳細については、Lite 予約の作成と管理をご覧ください。
Lite 予約なしのスループット
このセクションは、ゾーン Lite トピックにのみ適用されます。
1 つのトピックに対して予約を使用せず、パブリッシュとサブスクライブのスループット容量を予約することもできます。この場合、実行中の 24 時間の時間枠の最大容量ではなく、現在予約されている容量に対して課金されます。
予約なしで構成された容量は、次の上限内で設定する必要があります。
- 各パーティションのパブリッシュ用に 4 MiBps と 16 MiBps(4 と 16 の容量ユニットに相当)。
- 各パーティションのサブスクライブに 4 MiBps と 32 MiBps(2 と 16 の容量ユニットに相当)。
予約のない単一トピックのスループット容量の費用を計算する
次のセクションは、予約を使用しない単一のゾーン Lite トピックのスループット容量の費用を計算する際に役立ちます。
- トピックのタイプ = ゾーン Lite トピック
- トピック数 = 1
- パーティション数 = 4
- ピーク時のパブリッシュ スループット = 16 MiBps
- パブリッシュのスループットに必要な容量ユニット = 16
- ピーク時のサブスクライブのスループット = 16 MiBps
- サブスクライブのスループットに必要な容量ユニット = 8
- 必要な合計容量単位 = 16 + 8 = 24
- 北米での 24 キャパシティ ユニットの 1 か月あたりの費用 = $108
ストレージの費用
Lite のスループットと同様に、トピックのストレージ容量に対して料金が発生します。Pub/Sub Lite では、1 か月にプロビジョニングした最大ストレージ容量に対して課金されます。各パーティションには少なくとも 30 GiB のストレージ容量が必要です。
リージョン Lite トピックはリージョン内の 2 つのゾーンにデータを保存しますが、ゾーン LLite トピックはリージョン内の 1 つのゾーンにのみデータを保存します。リージョン Lite トピックでは、パブリッシュされるメッセージ 1 バイトごとに 2 バイトのストレージを使用します。したがって、リージョン Lite トピックにパブリッシュされるバイトあたりのストレージ コストは、ゾーンのコストの 2 倍になります。
Pub/Sub Lite システムのストレージ容量を見積もるには、次のリストをご覧ください。
メッセージの保存期間を決定します。
必要な合計ストレージを見積もるには、各パーティションの平均予想スループットに、メッセージの保存に必要な時間を掛けます。たとえば、ゾーン Lite トピックの 10 パーティションに 1 秒あたり 40 MiB のメッセージをパブリッシュし、メッセージを 1 日保持するには、3,375 GiB のストレージをプロビジョニングします(40 MiBps × 3,600 秒/時 × 24 時間 × 1 GiB / 1,024 MiB に相当)。北米では、ストレージの費用は $135 です(3,375 GiB × 24 時間 × 1 か月あたり 30 日 × $0.04 / GiB-month-zone に相当)。リージョン Lite トピックの場合、データは 2 つのゾーンに保存されるため、ストレージ費用が 2 倍の $270 になります。
鍵の不均一な配布を考慮します。
すべてのパーティションに同じストレージ容量が割り当てられます。一部のパーティションのボリュームが他よりも大きいことが予想される場合は、最大のパーティションに必要なストレージを持つようにすべてのパーティションをプロビジョニングします。
メッセージの量の計算
スループットとストレージのメッセージのサイズを計算する場合、各メッセージには最小で 256 バイトが使用されます。メッセージが 256 バイトより大きい場合、メッセージのサイズは次のメッセージ属性の合計になります。
- エンコードされたメッセージ本文の文字列のバイト数
- 各属性のキーと値のバイト数
- 順序指定キーのバイト数
- イベント タイムスタンプの 12 バイト
データ転送の費用
Pub/Sub Lite のデータ転送料金は、サブスクライバーがトピックのロケーションとは異なるゾーンまたはリージョンにいる場合にのみ適用されます。インターネット データ転送(送信)と Google Cloud リージョン間のメッセージ配信の料金は、VPC ネットワークの料金と同じですが、以下の点が異なります。
トピックと同じリージョンにサブスクライバーがあるリージョン Lite トピックの場合、ゾーンデータ転送料金は発生しません。
Google サービスへのデータ転送は、データ転送料金から免除されません。
米ドル以外の通貨でのお支払い
米ドル以外の通貨でお支払いの場合は、Google Cloud SKU に記載されている該当通貨の料金が適用されます。一覧表示されているレートは TiB あたりのレートです(2^40 (約 1.1 兆)バイト)。