我在Cloud DataPrep中创建了两个流程-第一个输出到BigQuery表,还创建了一个参考数据集。第二个流程获取参考数据集并对其进行进一步处理,然后输出到第二个BigQuery表。
是否可以安排这两个流程按顺序运行?目前,我必须估算出第一个流程所花费的时间,并安排第二个流程在第一个流程之后的XX分钟运行。
在第一个流程中触发第二个流程的食谱,或者按顺序安排它们的方法都是理想的选择。
This question显示了如何创建参考数据集,但没有解释是否有可能自动/顺序运行它们。
答案 0 :(得分:2)
参考数据集的文档暗示了这种行为,但可能更清晰。
最简单的解决方案,但不一定是您想要的,可以选择从流2中的流1执行BigQuery导出,即拥有一个简单的配方,仅托管导出工作。
在配方/作业稳定的情况下,我使用的解决方案是运行所得的Dataflow作业,而不是使用Dataprep工具本身来执行:Run Job on Cloud Dataflow
您可以使用一些选项来计划两个Dataflow作业。 (Cloud Scheduler可能是一个不错的选择-它是一个新项目,我正在寻找替换我目前托管为Cloud Functions的自定义解决方案的方法)
但是,就按顺序运行它们而言,BigQuery没有可以触发Job2的更新事件,因此您可以安排它们足够长的时间,并希望Job 1足够快完成,或者可以轮询BigQuery表元数据来查看修改日期是否更改。