Creación de una canalización de producción

Introducción a Apache Airflow en Python

Mike Metzger

Data Engineer

Ejecución de DAGs y tareas

Para ejecutar una tarea concreta desde la línea de comandos:

airflow tasks test <dag_id> <task_id> <date>

Para ejecutar un DAG completo:

airflow dags trigger -e <date> <dag_id>
Introducción a Apache Airflow en Python

Recordatorio de operadores

  • BashOperator: espera un bash_command
  • PythonOperator: espera un python_callable
  • BranchPythonOperator: requiere un python_callable y provide_context=True. La función debe aceptar **kwargs.
  • FileSensor: requiere el argumento filepath y puede necesitar los atributos mode o poke_interval
Introducción a Apache Airflow en Python

Recordatorios sobre plantillas

  • Muchos objetos en Airflow aceptan plantillas
  • Algunos campos permiten cadenas con plantilla; otros no
  • Para comprobarlo, usa la documentación integrada:
  1. Abre el intérprete de python3
  2. Importa las librerías necesarias (p. ej., from airflow.operators.bash import BashOperator)
  3. En el prompt, ejecuta help(<objeto de Airflow>), p. ej., help(BashOperator)
  4. Busca una línea que haga referencia a template_fields. Indica los argumentos que aceptan plantillas.
Introducción a Apache Airflow en Python

Ejemplo de documentación de plantillas

Ayuda de Airflow en python3

Ayuda sobre campos con plantilla en Airflow

Introducción a Apache Airflow en Python

¡Vamos a practicar!

Introducción a Apache Airflow en Python

Preparing Video For Download...