首页/数据/数据工程与 ETL 速查/Airflow Operator 常用算子

Airflow Operator 常用算子

Operator 是 Airflow 里一个任务做什么的模板类:BashOperator 跑 shell、PythonOperator 调函数、SQL 类算子执行查询,各系统对接由 Provider 包提供的专用算子完成。

BashOperator执行 shell 命令
PythonOperator执行 Python 可调用对象
SQL 类按数据库 Provider 提供,如 PostgresOperator
Provider 包apache-airflow-providers-* 需单独安装

两类算子示例

两类算子示例
from airflow.operators.bash import BashOperator
from airflow.operators.python import PythonOperator

BashOperator(task_id="sh", bash_command="hive -e 'select 1'")
PythonOperator(task_id="py", python_callable=lambda: print("ok"))
# SQL 算子来自对应 Provider,例如 PostgresOperator(sql="select 1")
算子参数支持 Jinja 模板:bash_command 里可用 {{ ds }}(逻辑日期)、{{ data_interval_start }} 等内置变量。

易错点

  • Provider 包没装就 import 算子会报 ModuleNotFoundError,整个 DAG 文件解析失败
  • bash_command 里的 Jinja 变量名写错不会报语法错误,只在运行时变成空字符串

数据来源与参考

  • Apache Airflow 官方文档:Operators
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌