在Airflow中,可以使用PythonOperator
来导入具有依赖关系的DAG。下面是一个示例代码,展示了如何使用PythonOperator
来定义任务,并设置任务之间的依赖关系。
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from datetime import datetime
# 定义一个函数,作为任务的执行逻辑
def task1():
print("Task 1 executed.")
def task2():
print("Task 2 executed.")
def task3():
print("Task 3 executed.")
# 定义DAG
dag = DAG(
'my_dag',
start_date=datetime(2022, 1, 1),
schedule_interval=None
)
# 定义三个任务,每个任务都是一个PythonOperator
task_1 = PythonOperator(
task_id='task_1',
python_callable=task1,
dag=dag
)
task_2 = PythonOperator(
task_id='task_2',
python_callable=task2,
dag=dag
)
task_3 = PythonOperator(
task_id='task_3',
python_callable=task3,
dag=dag
)
# 设置任务之间的依赖关系
task_1 >> task_2
task_2 >> task_3
在上面的示例中,我们定义了三个任务task1
,task2
和task3
,每个任务都是一个PythonOperator
,并且它们在dag
中被设置为依赖关系。任务task1
依赖于任务task2
,任务task2
依赖于任务task3
。意味着在执行DAG时,任务会按照依赖关系的顺序依次执行。
通过这种方式,可以在Airflow中轻松地导入具有依赖关系的DAG,并设置任务之间的依赖关系。