Airflow 我们是否可以动态地从变量中读取气流计划间隔,而不是作为cron表达式传递

Airflow 我们是否可以动态地从变量中读取气流计划间隔,而不是作为cron表达式传递,airflow,airflow-scheduler,airflow-operator,Airflow,Airflow Scheduler,Airflow Operator,我们是否可以动态读取气流变量,而不是直接作为cron表达式传递,从而参数化气流计划\u间隔 根据气流文件,我通过了以下途径 args={ “所有者”:“pavan”, “依赖于过去”:False, “开始日期”:日期时间(2020年1月15日), “失败时发送电子邮件”:True, “重试时发送电子邮件”:False, “重试次数”:0, “on\u failure\u callback”:通知\u电子邮件 } 将DAG(DAG_id=DAG_名称,默认值_args=args,计划间隔='*1*

我们是否可以动态读取气流变量,而不是直接作为cron表达式传递,从而参数化气流计划\u间隔

根据气流文件,我通过了以下途径 args={ “所有者”:“pavan”, “依赖于过去”:False, “开始日期”:日期时间(2020年1月15日), “失败时发送电子邮件”:True, “重试时发送电子邮件”:False, “重试次数”:0, “on\u failure\u callback”:通知\u电子邮件 }

将DAG(DAG_id=DAG_名称,默认值_args=args,计划间隔='*1***',catchup=False)作为DAG:

Yes

从技术上讲,你可以做到,但它带来了两个问题

  • 小问题:读取变量意味着向Airflow的
    SQLAlchemy
    后端元数据库触发SQL查询。在DAG定义脚本中执行此操作意味着,当背景中的气流不断解析DAG时,将发生这种情况。阅读

  • 主要问题:可以通过UI编辑变量。但是改变一个
    气流
    DAG的
    计划间隔
    可能会有一些古怪的行为,可能需要你或(轶事发现)来解决这个问题