5

为了将 bigquery 查询与实际代码分开,我想将 sql 存储在一个单独的文件中,然后从 python 代码中读取它。我试图将文件添加到与 DAG 相同的存储桶中以及子文件夹中,但是当气流运行带有 sql 文件的 python 脚本时,我似乎无法读取文件。

我想要的是这样的:

gs://my-bucket/dags -> store dags
gs://my-bucket/dags/sql -> store sql files

sql 文件可能是我需要首先读取的文件,以注入 jinja 模板不支持的内容。

我可以做到以上吗?

4

1 回答 1

9

Cloud Composer 使用 FUSE 驱动程序从gs://my-bucket到挂载 GCS 存储桶/home/airflow/gcs/。这意味着该gs://my-bucket/dags文件夹在调度程序、Web 服务器和工作人员中可用/home/airflow/gcs/dags

您的 DAG 应该能够从/home/airflow/gcs/dags/sql目录中读取 SQL 文件。

注意:该/home/airflow/gcs/data目录在工作人员上可用,但在网络服务器上不可用。

于 2018-05-24T17:49:59.933 回答