Airflow是一个非常流行的开源工具,用于编排数据管道。DAG(Directed Acyclic Graph)是Airflow中的一个核心概念,代表工作流程。
以下是如何使用Python和Airflow创建简单的DAG:
首先,我们需要安装Airflow:
!pip install apache-airflow
接下来,让我们创建一个DAG:
from airflow import DAG
from datetime import datetime
default_args = {
"owner": "airflow",
"start_date": datetime(2022, 1, 1)
}
dag = DAG(
"my_dag",
default_args=default_args,
schedule_interval="0 0 * * *"
)
在这里,我们创建了一个名为“my_dag”的DAG,并指定了默认参数和调度间隔。
现在,让我们为DAG添加一些任务:
from airflow.operators.bash_operator import BashOperator
task1 = BashOperator(task_id="task1", bash_command='echo "Hello from task 1!"', dag=dag)
task2 = BashOperator(task_id="task2", bash_command='echo "Hello from task 2!"', dag=dag)
在这里,我们使用BashOperator创建了两个任务。每个任务都有一个唯一的“task_id”,以及将在任务中运行的Bash命令。
最后,让我们为这些任务设置依赖关系:
task1 >> task2
这意味着任务2将在任务1完成后开始运行。
现在,我们已经创建了一个简单的DAG,使用Python和Airflow。我们可以将此代码保存到Python文件中,然后在Airflow中运行它。