3

Cloud DataPrep で 2 つのフローを作成しました。最初の出力は BigQuery テーブルに出力され、参照データセットも作成されます。2 番目のフローは参照データセットを取得し、それをさらに処理してから 2 番目の BigQuery テーブルに出力します。

これら 2 つのフローを順番に実行するようにスケジュールすることはできますか? 現時点では、最初のフローにかかる時間を見積もり、最初のフローから XX 分後に 2 番目のフローを実行するようにスケジュールする必要があります。

最初のフローで 2 番目のフローをトリガーするレシピ、またはそれらを順番にスケジュールする方法のいずれかが理想的です。

この質問は、参照データセットを作成する方法を示していますが、それらを自動的に/順次実行できるかどうかは説明していません。

4

1 に答える 1

2

参照データセットのドキュメントは、動作をほのめかしていますが、より明確になる可能性があります。

  • 最初のフローを参照データセットとして使用する 2 番目のフローは、最初のフロー ジョブを実行するため、フロー 2 の更新されたデータを使用します。
  • ただし、 BigQueryへのエクスポートでは、フロー 1 からのエクスポートは実行されません。

最も簡単な解決策ですが、必要とは限りませんが、フロー 1 からフロー 2 で BigQuery エクスポートを実行することを選択できます。つまり、エクスポート ジョブをホストするだけの単純なレシピを用意します。

レシピ/ジョブが安定している場合に私が使用するソリューションは、実行に Dataprep ツール自体を使用するのではなく、結果の Dataflow ジョブを実行することです: Run Job on Cloud Dataflow

2 つの Dataflow ジョブをスケジュールするためのオプションがいくつかあります。(Cloud Scheduler は良いプロジェクトかもしれません。これは新しいプロジェクトであり、現在 Cloud Functions としてホストしているカスタム ソリューションを置き換えることを検討しています)

ただし、それらを順番に実行するという点では、BigQuery には Job2 をトリガーする可能性のある更新イベントがないため、ジョブ 1 がすぐに終了することを十分に間隔をあけてスケジュールするか、BigQuery テーブルのメタデータをポーリングして、修正日の変更。

于 2018-11-16T14:19:52.783 に答える