将 Airflow 运行 id、dag id、执行日期等变量导出到 Bigquery 表

Posted

技术标签:

【中文标题】将 Airflow 运行 id、dag id、执行日期等变量导出到 Bigquery 表【英文标题】:Export Airflow run id , dag id ,execution date etc variable to Bigquery table 【发布时间】:2021-06-01 04:46:29 【问题描述】:

我正在为分析团队开发数据目录,并希望向他们提供 Airflow 作业信息的视图,包括 dag id、执行、任务状态等存储到 Bigquery 表中并显示为仪表板视图。

任何建议我应该如何进行设计。我应该使用 Airflow CLI 还是 Bashoperator 创建文件并写入 Bigquery。

谢谢

【问题讨论】:

您是否已经将 Airflow 作业信息(dag id、执行、状态等)导出到文件,或者您正在为此寻求最佳解决方案?如果是这样,我假设这个文件已经在 GCS 中了?要将这些信息写入 BigQuery,我建议您使用 GCSToBigQueryOperator 或者您有只能使用 Airflow CLIBashoperator 的限制? 您是否已经将 Airflow 作业信息(dag id、执行、状态等)导出到文件,或者您正在为此寻求最佳解决方案? - 我正在为此寻求最佳解决方案。 【参考方案1】:

老实说,如何导出 Airflow 变量取决于您自己。正如您所提到的,主要的两种方式是Bash Operator 和CLI。已经有一个类似的问题,可以在here 找到一些附加信息。

当您获得此文件时,我建议您将其保存在Google Cloud Storage,然后使用GCSToBigQueryOperator。

【讨论】:

以上是关于将 Airflow 运行 id、dag id、执行日期等变量导出到 Bigquery 表的主要内容,如果未能解决你的问题,请参考以下文章

Airflow DAG - 如何首先检查BQ(必要时删除)然后运行数据流作业?

如何向 Airflow 添加新的 DAG?

由于执行日期和开始日期,无法运行 Airflow 任务

在 DAG 运行期间动态生成 DAG - Airflow

Apache Airflow 中的分布式日志记录

如何限制 Airflow 一次只运行一个 DAG 实例?