我是Apache Airflow的新手。每次想要更改执行时间,我都会修改schedule_interval并替换python脚本。
我是否可以在不上传新python脚本的情况下更改DAG计划?
谢谢
我是Apache Airflow的新手。每次想要更改执行时间,我都会修改schedule_interval并替换python脚本。
我是否可以在不上传新python脚本的情况下更改DAG计划?
谢谢
有一个Airflow插件允许(可视化)生成和修改Dag,详情请见这里。但是看起来这个插件已经过时且不太活跃开发了。
Airflow的一般想法是etl-as-code,包括代码版本管理等好处。也就是说,你需要意识到从UI中重新定义调度时间等核心方面可能产生的问题。例如,如果您可以在UI中编辑调度时间(但这不会改变代码本身),那么您的DAG的状态将是什么?然而,这当然是不可能的,而Airflow的设计允许进行此类修改。
tldr;当然,人们可以定制UI(如上所述,使用Airflow插件),事实上,您的要求非常易于理解,特别是考虑到不能上传/修改代码的非技术用户。
另一个可能更容易的选择可能是在Airflow中使用变量,即从Airflow变量中提取调度时间/cron-linke调度字符串(1 * * * *
,每日
等);这些变量可以在GUI中修改,因此这可能适合您。
Broken DAG: [/opt/airflow/dags/ADB-365/big-kahuna-365-adb-incremental.py] Invalid Cron expression: Exactly 5 or 6 columns has to be specified for iteratorexpression.