【问题标题】:How to import DAG with specific Parameters如何使用特定参数导入 DAG
【发布时间】:2021-12-15 09:28:38
【问题描述】:

我有一个 DAG,我想用一些参数在 Composer 中启动它。 我不能使用 Airflow 全局变量,因为我想用不同的“上下文”启动同一个 DAG。代表此上下文的我的参数

感谢您的帮助

【问题讨论】:

    标签: google-cloud-composer


    【解决方案1】:

    您可以做的是在单独的文件上创建一个 dag 作为函数,然后只需使用不同的 dag 配置重用您的 dag 代码。下面表示的是伪代码中的方法:

    Dag 文件夹

    #ie:
    #machine_export.py
    #car_export.py
    #plane_export.py
    
    from logic import export_pub_template
    
    config = {
    'param1': ...
    'param2': ...
    }
    
    with DAG(dag_id='',
             ...
         ) as dag:
    
       export_pub_template(config)
    

    逻辑文件夹

    #push_data_template_dag.py 
    
    def export_pub_template(config):
    
      get_data = get_data_custom_operator(config.params)
      export_data = send_data_to_db(config.params)
    
      get_data >> export_data
    

    另外,这里还有一个类似的approach。它遵循相同的模式,即分解 DAG 代码,以便您可以在类似的 DAG 中重用它。

    有关编写 DAG 的详细信息,您可以查看此link

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-01
      • 2020-05-08
      • 2020-02-25
      • 2021-06-19
      • 1970-01-01
      相关资源
      最近更新 更多