Dataflow を使ってみる

Dataflow サービスは、Apache Beam SDK で定義されたパイプラインを実行します。ただし、Dataflow で複数のノーコード オプションとローコード オプションが用意されているため、多くのユースケースでは、SDK を使用してコードを記述する必要はありません。

  • テンプレート。Dataflow には、あるプロダクトから別のプロダクトにデータを移動するための構築済みテンプレートが用意されています。たとえば、テンプレートを使用して Pub/Sub から BigQuery にデータを移動できます。

  • ジョブビルダージョブビルダーは、Google Cloud コンソールで Dataflow パイプラインを構築するためのビジュアル UI です。Apache Beam のソースとシンクのサブセットと、結合などの変換、Python 関数、SQL クエリをサポートしています。データ移動などの単純なユースケースには、ジョブビルダーの使用をおすすめします。

  • ML 用のすぐに使える変換。Dataflow では ML パイプライン用に、最小限のコードで構成できる、すぐに使える変換が用意されています。まずは、Google Colab でサンプルの ML ノートブックを実行してみてください。詳細については、Dataflow ML の概要をご確認ください。

  • Apache Beam SDK。Apache Beam の機能を最大限に活用するには、SDK を使用して Python、Java、Go でカスタム パイプラインを作成します。

参考として、以下の表に一般的な例をまとめています。

やりたいこと おすすめの方法
カスタム ロジックなしで、ソースからシンクにデータを移動する。

ジョブビルダーまたはテンプレート

まずはジョブビルダーを使用することをおすすめします。ジョブビルダーがユースケースをサポートしていない場合は、そのユースケース用のテンプレートがあるかどうかを確認してください。

ソースからシンクにデータを移動し、Python 関数または SQL を使用したカスタム ロジックを適用する。 ジョブビルダー
パイプラインで ML モデルを使用するか、トレーニングまたは推論用にデータを準備する。 Dataflow ML のすぐに使える変換
より高度な Apache Beam 機能を必要とするパイプラインを作成する。 Java、Python、Go 用の Apache Beam SDK

次のステップ