用語解説
Google Cloud Dataflowとは、GCPが提供するフルマネージドのデータ処理パイプラインサービスです。Apache Beamモデルに基づき、バッチ処理とストリーミング処理を統一的なコードで記述・実行できます。
Dataflowはワーカーの自動スケーリングと動的ワークリバランスにより、大量データの処理時間を最適化します。Pub/Sub・BigQuery・Cloud Storageとの深い統合により、リアルタイムETLパイプラインの構築に広く使われています。
どんな場面で活用するか
- Pub/Subから流れ込むイベントストリームをリアルタイム集計してBigQueryに書き込みたい場合
- 大量のログファイルをバッチでクレンジング・変換・集計するETLジョブを自動化したい場合
- ウィンドウ関数を使った時系列集計(直近1時間の平均値など)を低レイテンシで処理したい場合
よくある誤解
「DataflowはSpark/Hadoopより常に遅い」は誤りです。DataflowはApache Beamを最適化して実行するマネージドエンジンであり、適切に設計されたパイプラインではSpark on Dataprocと同等以上のパフォーマンスを発揮します。
判断のヒント
コスト管理Dataflowは処理データ量とワーカー稼働時間で課金されます。Flex Resourcesを使うと処理量に応じて自動的にリソースが調整されます。Dataflow Primeを使うとVertical AutoscalingでCPU/メモリをジョブ途中で最適化できます。