ElcamyTECH
Articles

Google Cloud のワークフローの特徴比較

TechパイプラインCloud ComposerWorkflowsGoogleCloudCloud Data FusionGoogleCloudDataformVertex AIGoogleCloudGoogle Cloud2023/06/08

はじめに

データ基盤でデータを処理する一連の流れをデータパイプラインと言います。データパイプラインを構成するワークフローとは、処理タスクの順序やパターンを指定したものです。Google Cloudには複数のワークフロープロダクトがあります。それぞれの特徴を紹介します。

Google Cloud のワークフロープロダクトの特徴まとめ

Google Cloud のワークフロープロダクトは、それぞれ以下のような特徴を持っています。

Cloud ComposerWorkflowsCloud Data FusionBigQueryスケジューリングDataformVertex AI Pipelines
処理の実行順序の柔軟性順次順序、条件分岐、並列処理順次実行、条件分岐、並列実行順次実行、条件分岐、並列処理順次実行順次実行順序実行、条件分岐、並列処理
スケジュール機能cronでのスケジューリング機能があるCloud Schedulerと組み合わせて使用可能cronでのスケジューリング機能があるcronでのスケジューリング機能があるcronでのスケジューリング機能があるCloud Schedulerと組み合わせて使用可能
開発方法PythonによるDAG定義YAMLでワークフローを定義GUIを使ったパイプライン設計BiqQueryのSQLSQLXというSQL拡張言語で定義(SQLとJavaScriptによるデータ変換の定義) GitHub、GitLabでのコードバージョン管理Python SDKを使用したパイプラインの作成
連携可能なサービスの種類多数のGoogle Cloudサービスと連携可能HTTPベースの任意のAPI Google Cloud API多数のGoogle Cloudサービス、データソースと連携可能BigQueryと直接連携BigQueryと直接連携GCPのAI・MLサービス、データサービスとの連携が可能
エラー処理リトライ、エラーロギングリトライ、エラーロギング、エラーハンドリングリトライ、エラーロギングなしリトライ、エラーロギングエラーロギング
エラー通知Email単体ではなしEmail、HTTP callEmail、Pub/SubEmail、Slack単体ではなし
ワークフローの監視AirflowのUI、Cloud LoggingWorkflows UI、Cloud LoggingCloud Data Fusion UI、Cloud LoggingBigQuery UI、Cloud LoggingDataform UI、Cloud LoggingVertex AI UI、Cloud Logging
運用フルマネージドサーバーレスフルマネージドサーバーレスサーバーレスサーバーレス

Cloud Composer

Cloud Composerは、Apache Airflowをベースにしたフルマネージドのワークフローオーケストレーションサービスで、複数のGCPサービス間での複雑なデータパイプラインの管理に適しています。例えば、BigQueryでデータを処理した後に、その結果をCloud Storageに保存し、その後Cloud Pub/Subで結果を他のサービスに通知するといったシナリオで利用されます。

https://cloud.google.com/composer?hl=ja

Workflows

Workflowsは、マイクロサービスの連携や、HTTP APIの連携など、各種API呼び出しのシーケンスを表現するのに最適なツールです。例えば、ユーザーが注文を行った際に、決済処理、在庫確認、配送手配といった複数のAPIを順序良く呼び出すといったシナリオで利用されます。

https://cloud.google.com/workflows?hl=ja

Cloud Data Fusion

Cloud Data Fusionは、データ変換(ETL)タスクに焦点を当てたデータ統合サービスで、ユーザーは、コードを書かずにデータパイプラインをGUIでデザインできます。データウェアハウスの作成や、データのクレンジングと変換に最適です。

https://cloud.google.com/data-fusion?hl=ja

BigQueryスケジューリング

BigQueryスケジューリングは、BigQueryクエリの定期実行を可能にする機能です。SQLを用いてデータ分析を行う際に、その結果を定期的に取得する必要がある場合に役立ちます。

https://cloud.google.com/bigquery/docs/scheduling-queries?hl=ja

Dataform

Dataformは、BigQueryに特化したデータ変換(ETL)ツールで、SQLによる大規模なデータパイプラインの作成と管理を支援します。データウェアハウス内のデータ品質保証や、報告用のデータセット作成に適しています。

https://cloud.google.com/dataform?hl=ja

Vertex AI Pipelines

Vertex AI Pipelinesは、機械学習ワークフローを自動化するためのサービスで、データの前処理、モデルの訓練、モデルの評価とデプロイといった一連のMLタスクを効率的に管理します。

https://cloud.google.com/vertex-ai/docs/pipelines?hl=ja

関連記事

Elcamyについて

AI・データエンジニアリング・クラウドを中心に、技術で事業課題を解決しています。 お気軽にご相談ください。