Apache Airflow es una plataforma de gestión de flujos de trabajo de código abierto para canalizaciones de ingeniería de datos. Comenzó en Airbnb en octubre de 2014 [2] como una solución para gestionar los flujos de trabajo cada vez más complejos de la empresa. La creación de Airflow le permitió a Airbnb crear y programar programáticamente sus flujos de trabajo y monitorearlos a través de la interfaz de usuario de Airflow incorporada . [3] [4] Desde el principio, el proyecto se convirtió en código abierto, convirtiéndose en un proyecto Apache Incubator en marzo de 2016 y en un proyecto de nivel superior de Apache Software Foundation en enero de 2019.
Airflow está escrito en Python y los flujos de trabajo se crean a través de scripts de Python. Airflow está diseñado según el principio de "configuración como código". Si bien existen otras plataformas de flujo de trabajo de "configuración como código" que utilizan lenguajes de marcado como XML , el uso de Python permite a los desarrolladores importar bibliotecas y clases para ayudarlos a crear sus flujos de trabajo.
Airflow utiliza gráficos acíclicos dirigidos (DAG) para gestionar la orquestación del flujo de trabajo . Las tareas y dependencias se definen en Python y luego Airflow gestiona la programación y la ejecución. Los DAG se pueden ejecutar según un cronograma definido (por ejemplo, cada hora o cada día) o en función de activadores de eventos externos (por ejemplo, un archivo que aparece en Hive [5] ). Los programadores anteriores basados en DAG, como Oozie y Azkaban, tendían a depender de múltiples archivos de configuración y árboles de sistemas de archivos para crear un DAG, mientras que en Airflow, los DAG a menudo se pueden escribir en un archivo de Python. [6]
Tres proveedores notables ofrecen servicios auxiliares en torno al proyecto central de código abierto.
{{cite web}}
: Falta o está vacío |title=
( ayuda )