Dataflow の料金

このページでは、Dataflow の料金について説明します。他のプロダクトの料金を確認するには、料金についてのドキュメントをご覧ください。

3 年間のコミットメントで 40%、1 年間のコミットメントで 20% のコスト削減方法については、確約利用割引(CUD)のページをご覧ください。

概要

Dataflow の使用量は、ジョブで使用するリソースに対して課金されます。使用する料金モデルに応じて、リソースの測定と課金の方法が異なります。

Dataflow コンピューティング リソース Dataflow Prime のコンピューティング リソース
データ コンピューティング単位(DCU)
(バッチとストリーミング)

すべてのジョブで課金されるその他の Dataflow リソースには、Persistent Disk、GPU、スナップショットなどがあります。

Dataflow ジョブに他のサービスのリソースが使用される場合があります。Dataflow で使用されるサービスには、BigQuery、Pub/Sub、Cloud Storage、Cloud Logging などがあります。

料金設定は時間単位ですが、Dataflow の使用量はジョブごとに秒単位で課金されます。秒単位の使用に対して時間単位の料金を適用するため、使用量は時間単位で示されます。たとえば、30 分は 0.5 時間です。ワーカーとジョブは、次のセクションで説明するようにリソースを消費します。

Dataflow の今後のリリースでは、サービス料金や関連サービスのバンドルが異なる可能性があります。

Dataflow のコンピューティング リソース

Dataflow のコンピューティング リソースの課金には、次のコンポーネントが含まれます。

使用可能なリージョンとゾーンの詳細については、Compute Engine のリージョンとゾーンのページをご覧ください。

ワーカーの CPU とメモリ

各 Dataflow ジョブは、少なくとも 1 つの Dataflow ワーカーを使用します。Dataflow サービスは、バッチとストリーミングの 2 つのワーカータイプを提供します。バッチ ワーカーとストリーミング ワーカーでは別々のサービス料金が発生します。

Dataflow ワーカーは次のリソースを消費し、それぞれ秒単位で課金されます。

  • CPU
  • メモリ

バッチワーカーとストリーミング ワーカーは、Compute Engine を使用する特殊なリソースです。ただし、Dataflow ジョブでは、Dataflow サービスによって管理される Compute Engine リソースに対して Compute Engine 課金は発行されません。Dataflow サービスの料金には、これらの Compute Engine リソースの使用が含まれます。

ジョブのデフォルトのワーカー数をオーバーライドできます。自動スケーリングを使用している場合は、ジョブに割り当てるワーカーの最大数を指定できます。ワーカーとそれぞれのリソースは、自動スケーリングの作動に基づいて自動的に追加または削除されます。

さらに、パイプライン オプションを使用して、各ワーカーに割り当てられ、GPU を使用するマシンタイプ、ディスクタイプ、ディスクサイズなどのデフォルトのリソース設定をオーバーライドできます。

FlexRS

Dataflow には、バッチ処理用の CPU とメモリに割引料金を適用できるオプションが用意されています。Flexible Resource Scheduling(FlexRS)では、処理リソースの使用料を抑えられるよう、通常の VM とプリエンプティブル VM を単一の Dataflow ワーカープールにまとめています。また、FlexRS は、使用可能なリソースに基づいてジョブを開始するのに最適な時点を特定するため、Dataflow のバッチジョブの実行を 6 時間の時間枠内で遅延させます。

Dataflow はワーカーを組み合わせて FlexRS ジョブを実行しますが、ワーカータイプに関係なく、CPU とメモリのコストに関して通常の Dataflow 料金と比較して約 40% の均一な割引料金が請求されます。Dataflow で、自動スケーリングされるバッチ パイプラインに FlexRS を使用するには、FlexRS パラメータを指定します。

Dataflow Shuffle によるデータの処理

バッチ パイプラインの場合、Dataflow は、ワーカーの外部でデータをシャッフルするスケーラビリティの高い機能である Dataflow Shuffle を提供します。詳細については、Dataflow Shuffle をご覧ください。

Dataflow Shuffle では、シャッフル中に処理されたデータ量に応じて課金されます。

Streaming Engine の料金

ストリーミング パイプラインの場合、Dataflow Streaming Engine は、ストリーミング シャッフルと状態処理をワーカー VM から Dataflow サービスのバックエンドに移動します。詳細については、Streaming Engine をご覧ください。

Streaming Engine コンピューティング単位数

リソースベースの課金では、Streaming Engine のリソースは Streaming Engine コンピューティング単位数で測定されます。Dataflow は、各ジョブが使用する Streaming Engine リソースを計測し、そのジョブで使用されているリソースの合計に基づいて課金されます。ジョブに対してリソースベースの課金を有効にするには、リソースベースの課金を使用するをご覧ください。リソースベースの課金を使用する場合、既存の割引が自動的に適用されます。

リソースベースの課金で Dataflow Prime を使用すると、各ジョブが使用する合計リソースに基づいて課金されますが、Data Compute Unit(DCU)SKU が Streaming Engine コンピューティング ユニット SKU の代わりに使用されます。

処理された Streaming Engine データ(従来版)

Dataflow は、従来のデータ処理課金を引き続きサポートします。リソースベースの課金を有効にしない限り、ジョブはデータ処理課金を使用して課金されます。

Streaming Engine のデータ処理課金では、次の要素に応じて、処理されたストリーミング データの量に基づいて使用量が測定されます。

  • ストリーミング パイプラインに取り込まれるデータの量
  • パイプラインの複雑さ
  • シャッフル オペレーションまたはステートフル DoFn を使用したパイプライン ステージの数

処理されたバイト数としてカウントされるものの例には、次のようなものがあります。

  • データソースからの入力フロー
  • 融合されたパイプライン ステージから別の融合ステージへのデータの流れ
  • ユーザー定義の状態で保持される、またはウィンドウ処理に使用されるデータのフロー
  • Pub/Sub や BigQuery などのデータシンクにメッセージを出力する

Dataflow コンピューティング リソースの料金 - バッチと FlexRS

次の表に、バッチジョブと FlexRS ジョブで処理されるワーカー リソースと Shuffle データの料金の詳細を示します。

1 バッチワーカーのデフォルト: vCPU 1 個、メモリ 3.75 GB、Dataflow Shuffle を使用しない場合は 250 GB の永続ディスク、Dataflow Shuffle を使用する場合は 25 GB の永続ディスク

2 FlexRS ワーカーのデフォルト: 1 ワーカーあたり vCPU 2 個、メモリ 7.50 GB、永続ディスク 25 GB(最小 2 つのワーカー)

Dataflow コンピューティング リソースの料金 - ストリーミング

次の表に、ワーカー リソース、処理された Streaming Engine データ(レガシー)、ストリーミング ジョブの Streaming Engine Compute Unit の料金の詳細を示します。

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている該当通貨の料金が適用されます。

3 ストリーミング ワーカーのデフォルト: vCPU 4 個、メモリ 15 GB、Streaming Engine を使用しない場合は 400 GB の永続ディスク、Streaming Engine を使用している場合は 30 GB の永続ディスク。Dataflow サービスは、ストリーミング ジョブの実行時に、ワーカー インスタンスあたり 15 個の永続ディスクに制限されています。リソース割り当てでは、ワーカーとディスクの 1:1 の比率が最小要件になります。

4 Dataflow Shuffle の料金は、データセットのシャッフル中に読み取り / 書き込みオペレーション中に処理されるデータの量に適用されるボリューム調整に基づいています。詳細については、Dataflow Shuffle の料金の詳細をご覧ください。Dataflow Shuffle の料金は、リソースベースの課金を使用する Streaming Engine ジョブには適用されません。

5 Streaming Engine コンピューティング単位数: Streaming Engine とリソースベースの課金モデルを使用するストリーミング ジョブの場合。シャッフル中に処理されたデータについては、これらのジョブには課金されません。

処理される Dataflow Shuffle データのボリューム調整

料金は、Dataflow Shuffle オペレーション中に処理されたデータの合計量に適用されるボリューム調整を通じて、Dataflow ジョブごとに計算されます。処理された Dataflow Shuffle データに対する実際の請求額は、Dataflow ジョブで処理された合計データ量よりも少ない量に対する正規料金と同じになります。この違いにより、課金対象シャッフル データ処理量の指標は処理されたシャッフル データ総量の指標よりも小さくなります。

次の表で、この調整の適用方法を説明します。

Dataflow Shuffle データの処理 請求額の調整
最初の 250 GB 75% 削減
次の 4,870 GB 50% 削減
5,120 GB(5 TB)を超えた分 なし

たとえば、パイプラインで 1,024 GB(1 TB)の Dataflow Shuffle データが処理された場合、請求可能額は次のように計算されます。

250 GB * 25% + 774 GB * 50% = 449.5 GB * regional Dataflow Shuffle data processing rate

パイプラインで 10, 240 GB(10 TB)の Dataflow Shuffle データが処理された場合、請求対象データ量は次のようになります。

250 GB * 25% + 4870 GB * 50% + 5120 GB = 7617.5 GB

Dataflow Prime コンピューティング リソースの料金

Dataflow Prime は、Dataflow を基盤とするデータ処理プラットフォームで、リソース使用率と分散診断を改善します。

Dataflow Prime のジョブで使用されるコンピューティング リソースは、Data Compute Unit(DCU)の数によって課金されます。DCU は、パイプラインを実行するために割り当てられるコンピューティング リソースを表します。Persistent Disk、GPU、スナップショットなど、Dataflow Prime ジョブで使用されるその他の Dataflow リソースは別途課金されます。

使用可能なリージョンとゾーンの詳細については、Compute Engine のリージョンとゾーンのページをご覧ください。

データ計算装置

データ コンピューティング ユニット(DCU)は、ジョブで消費したコンピューティング リソースの数を追跡する Dataflow 使用状況測定ユニットです。DCU で追跡されるリソースには、vCPU、メモリ、処理された Dataflow Shuffle データ(バッチジョブの場合)、処理された Streaming Engine データ(ストリーミング ジョブの場合)などがあります。リソース消費量が多いジョブは、リソース消費量が少ないジョブよりも DCU 使用率が高くなります。1 つの DCU は、1 vCPU、4 GB のワーカーで 1 時間実行される Dataflow ジョブで使用されるリソースに相当します。

データ コンピューティング ユニットの課金

ジョブで使用した DCU の合計数に応じて課金されます。単一の DCU の料金は、バッチジョブとストリーミング ジョブのどちらを使用するかによって異なります。リソースベースの課金で Dataflow Prime を使用すると、バイトプロセスではなく、使用されたリソースの合計に基づいて課金されます。

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている該当通貨の料金が適用されます。

データ コンピューティング ユニットの使用量を最適化する

ジョブの DCU の数は設定できません。DCU は Dataflow Prime によってカウントされます。ただし、ジョブの次の要素を管理することで、使用する DCU の数を減らすことができます。

  • メモリ消費量の削減
  • フィルタ、コンバイナ、効率的なコーダーを使用して、シャッフル ステップで処理されるデータの量を減らす

これらの最適化を特定するには、Dataflow モニタリング インターフェース実行の詳細インターフェースを使用します。

Dataflow Prime の料金と Dataflow の料金の違いは何ですか?

Dataflow では、vCPU、メモリ、Persistent Disk など、ジョブで消費する各種リソースと、Dataflow Shuffle または Streaming Engine によって処理されたデータの量に応じて課金されます。

データ コンピューティング ユニットは、ストレージを除くすべてのリソースを 1 つの測定ユニットに統合します。Persistent Disk リソースと、ジョブタイプ、バッチ、ストリーミングに基づいて消費した DCU の数に対して課金されます。詳細については、Dataflow Prime の使用をご覧ください。

Dataflow の料金モデルを使用する既存のジョブはどうなりますか?

既存のバッチジョブとストリーミング ジョブは、引き続き Dataflow モデルを使用して課金されます。Dataflow Prime を使用するようにジョブを更新すると、そのジョブには Dataflow Prime 料金モデルが適用されます。このモデルでは、Persistent Disk リソースと消費した DCU に対して課金されます。

その他の Dataflow リソース

ストレージ、GPU、スナップショットなどのリソースは、Dataflow と Dataflow Prime で同じ方法で課金されます。

ストレージ リソースの料金

ストレージ リソースは、ストリーミング ジョブ、バッチジョブ、FlexRS ジョブに対して同じレートで課金されます。パイプライン オプションを使用して、デフォルトのディスクサイズやディスクタイプを変更できます。Dataflow Prime では、次の表の料金に基づいて永続ディスクが個別に課金されます。

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている該当通貨の料金が適用されます。

Dataflow サービスは、ストリーミング ジョブの実行時に、ワーカー インスタンスあたり 15 個の永続ディスクに制限されています。各永続ディスクは、個々の Compute Engine 仮想マシンに対してローカルです。リソース割り当ての最小値は、ワーカーとディスクの 1:1 の比率です。

Streaming Engine を使用するジョブでは、30 GB のブートディスクが使用されます。Dataflow Shuffle を使用するジョブでは、25 GB のブートディスクが使用されます。これらのサービスを使用していないジョブの場合、各永続ディスクのデフォルト サイズは、バッチモードで 250 GB、ストリーミング モードで 400 GB です。

Compute Engine の使用量は平均ワーカー数に基づき、永続ディスクの使用量は --maxNumWorkers の値に基づきます。永続ディスクは、各ワーカーにアタッチされたディスク数が等しくなるように再配布されます。

GPU リソースの料金

GPU リソースは、ストリーミング ジョブとバッチジョブで同じレートで課金されます。現在、FlexRS は GPU をサポートしていません。GPU で使用可能なリージョンとゾーンについては、Compute Engine ドキュメントの GPU のリージョンとゾーンの可用性をご覧ください。

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている該当通貨の料金が適用されます。

スナップショット

ストリーミング パイプラインの信頼性を管理するには、スナップショットを使用してパイプラインの状態の保存と復元を行います。スナップショットの使用量は、保存されているデータの量に応じて課金されます。この量は、次の要因によって決まります。

  • ストリーミング パイプラインに取り込まれるデータの量
  • ウィンドウ処理ロジック
  • パイプライン ステージの数

ストリーミング ジョブのスナップショットは、Dataflow コンソールまたは Google Cloud CLI を使用して作成できます。スナップショットからジョブを作成して、パイプラインの状態を復元する場合、追加料金は発生しません。詳細については、Dataflow スナップショットの使用をご覧ください。

スナップショットの料金

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている該当通貨の料金が適用されます。

Confidential VMs

Dataflow 用の Confidential VM は、ワーカー Compute Engine VM で使用されているデータを暗号化します。詳細については、Confidential Computing のコンセプトをご覧ください。

Dataflow に Confidential VMs を使用すると、vCPU と GB あたりの定額料金が追加で発生します。

Confidential VMs の料金

価格はグローバルであり、Google Cloud のリージョンに基づいて変更されることはありません。

Dataflow 以外のリソース

Dataflow での使用に加えて、ジョブが次のリソースを使用する可能性があります。これらのリソースは、それぞれ独自の料金で課金されます。

リソースの使用状況を表示する

[リソースの指標] の [ジョブ情報] パネルで、ジョブに関連付けられた vCPU、メモリ、永続ディスク リソースの合計を確認できます。Dataflow Monitoring Interface で次の指標を追跡できます。

  • 合計 vCPU 時間
  • 合計メモリ使用時間
  • Persistent Disk の合計使用時間
  • 処理されたストリーミング データの合計量
  • 処理されたシャッフル データの合計
  • 課金対象のシャッフル データの処理

パイプラインのパフォーマンスを評価するには [合計シャッフル データの処理量] 指標を使用し、[処理された課金対象シャッフル データ] 指標を使用して Dataflow ジョブのコストを判断できます。

Dataflow Prime の場合、[リソース指標] の [ジョブ情報] パネルで、ジョブで消費された DCU の合計数を確認できます。

料金計算ツール

Google Cloud 料金計算ツールを使用すると、請求金額の算出方法を確認できます。

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている該当通貨の料金が適用されます。

次のステップ

カスタム見積もりをリクエストする

Google Cloud の従量制課金では、使用したサービスに対してのみ料金が発生します。カスタム見積もりをご希望の場合は、Google のセールスチームにお問い合わせください。
お問い合わせはこちら