Apache Airflow es una plataforma para crear, programar y supervisar mediante código flujos de trabajo definidos en Python (Dags).
Netflix/maestro
El orquestador de flujos de trabajo de propósito general de Netflix, ofrecido como servicio para programar y ejecutar pipelines de datos y ML.
Alternativa open source a:Apache Airflow
- Estrellas
- 3,852
- Forks
- 311
- Issues abiertos
- 39
- Último commit
- ayer
¿Qué es?
Maestro es un orquestador de flujos de trabajo desarrollado originalmente en Netflix para ejecutar pipelines de datos y machine learning. Los usuarios definen los flujos como grafos dirigidos acíclicos (DAG) de trabajos y luego los programan, inician y supervisan mediante una API de servidor. El proyecto está escrito en Java y se ejecuta con Spring Boot.
El servidor ofrece una API REST versionada para crear flujos de trabajo, iniciar ejecuciones y consultar instancias y ejecuciones de pasos. Los flujos se pueden enviar en YAML o JSON, y un SDK de Python (maestro-sdk) incluye un builder para definirlos mediante código. Las instrucciones de configuración incluyen un ejemplo del flujo de compilación, ejecución y activación.
El repositorio incluye un módulo de AWS que se ejecuta localmente con LocalStack para SQS y SNS, además de una opción de Kubernetes para ejecutar trabajos. Un servicio opcional, maestro-extensions, consume eventos del servidor para ofrecer vistas como la de los pasos foreach aplanados.
Funciones clave
- 01Define flujos de trabajo como DAG de trabajos, enviados en YAML o JSON.
- 02Ofrece una API REST versionada para crear, iniciar e inspeccionar flujos de trabajo y ejecuciones.
- 03Incluye un SDK de Python para crear y enviar flujos de trabajo.
- 04Admite la integración con AWS mediante el manejo de eventos de SQS y SNS.
- 05Puede ejecutar trabajos en Kubernetes.
- 06Ofrece un servicio de extensiones con vistas aplanadas de foreach.
Casos de uso
- Programar pipelines ETL o ELT recurrentes de ingeniería de datos.
- Orquestar flujos de trabajo de entrenamiento de machine learning y scoring por lotes.
- Ejecutar grandes cantidades de trabajos de datos mediante un servicio de flujos de trabajo gestionado y controlado por API.
- Evaluar un motor de flujos de trabajo al estilo de Netflix para una plataforma de datos interna.
Inicio rápido
- 1
Instala los requisitos previos: Git, Java 21, Gradle y Docker
- 2
Compila el proyecto
./gradlew build - 3
Ejecuta el servidor
./gradlew bootRun - 4
Crea un flujo de trabajo de ejemplo mediante la API
curl --header "user: tester" -X POST 'http://127.0.0.1:8080/api/v3/workflows' -H "Content-Type: application/json" -d @maestro-server/src/test/resources/samples/sample-dag-test-1.json
Antes de usarlo
- Se necesitan Java 21, Gradle y Docker para compilar y ejecutar el proyecto.
- Está diseñado como una plataforma interna a gran escala; alojarlo por cuenta propia requiere trabajo de configuración.
- Algunas funciones, como el modo AWS, requieren Docker Compose y LocalStack para las pruebas locales.
Temas
Preguntas frecuentes
- ¿Qué es maestro?
- El orquestador de flujos de trabajo de propósito general de Netflix, ofrecido como servicio para programar y ejecutar pipelines de datos y ML. Maestro es un orquestador de flujos de trabajo desarrollado originalmente en Netflix para ejecutar pipelines de datos y machine learning. Los usuarios definen los flujos como grafos dirigidos acíclicos (DAG) de trabajos y luego los programan, inician y supervisan mediante una API de servidor. El proyecto está escrito en Java y se ejecuta con Spring Boot.
- ¿maestro es gratuito? ¿Qué licencia tiene?
- maestro es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿maestro sigue mantenido?
- Mantenimiento activo. El último commit de maestro fue el 6 nov 2026.
- ¿Para qué puedo usar maestro?
- Programar pipelines ETL o ELT recurrentes de ingeniería de datos. Orquestar flujos de trabajo de entrenamiento de machine learning y scoring por lotes. Ejecutar grandes cantidades de trabajos de datos mediante un servicio de flujos de trabajo gestionado y controlado por API. Evaluar un motor de flujos de trabajo al estilo de Netflix para una plataforma de datos interna.
- ¿Cómo se instala maestro?
- Instala los requisitos previos: Git, Java 21, Gradle y Docker Compila el proyecto: ./gradlew build Ejecuta el servidor: ./gradlew bootRun Crea un flujo de trabajo de ejemplo mediante la API: curl --header "user: tester" -X POST 'http://127.0.0.1:8080/api/v3/workflows' -H "Content-Type: application/json" -d @maestro-server/src/test/resources/samples/sample-dag-test-1.json
- ¿Dónde consigo maestro?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Netflix/maestro
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Plataforma de orquestación de código abierto y basada en eventos para programar y ejecutar flujos de trabajo de datos, IA e infraestructura definidos en YAML.
Plataforma de orquestación en Python para definir, ejecutar y monitorear activos de datos como tablas, conjuntos de datos, modelos de ML e informes.
Framework ETL de Python para procesamiento de streams, analítica en tiempo real, pipelines de LLM y RAG, impulsado por un motor Rust.
Plataforma distribuida y low-code de orquestación de datos para crear, programar y supervisar flujos de trabajo complejos de pipelines de datos.
Motor de workflows nativo de contenedores para orquestar trabajos paralelos en Kubernetes, implementado como un CRD.