Airflow / Composer建议的文件夹结构

时间:2018-09-26 18:27:19

标签: airflow google-cloud-composer

你们对Composer文件夹/目录结构有什么建议吗?它的结构方式与我们内部的Airflow服务器当前使用的方式不同。

基于Google文档:https://cloud.google.com/composer/docs/concepts/cloud-storage

  • plugins/:存储您的自定义插件,运算符,挂钩
  • dags/:存储dag以及Web服务器解析dag所需的任何数据。
  • data/:存储任务产生和使用的数据。

这是我如何组织dags文件夹的示例: dags-structure

在将key.json文件放入data/文件夹中时遇到了麻烦,并且无法使用data/文件夹中的密钥来解析dag。因此,现在我倾向于将所有支持文件放在dags/文件夹中。

如果我将dag的受支持文件(sql,key,schema)放在dags/文件夹中,会影响调度程序的性能吗?有使用data/文件夹的好用例吗?

如果你们能给我看一个示例,说明如何构造composer文件夹以支持具有不同dag,插件和受支持文件的多个项目,这将很有帮助。

现在,整个Airflow文件夹只有1个Github。每个项目有一个单独的git更好吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

只要您放置在dags文件夹中的文件不是.py文件,对调度程序的影响就应该很小。但是,您也可以将文件放在也通过复制同步的plugins文件夹中。

如果项目足够大,我将使用顶级文件夹来分隔项目(例如dags/projectA/dagA.py),甚至使用单独的环境。