🚀 Esta es la nueva alternativa open source para orquestación de data pipelines que mejora a Apache Airflow en muchos puntos. Os cuento!!
🔎 Windmill es una herramienta de código abierto que permite la orquestación de scripts en diversos lenguajes como TypeScript, Go, Python, Bash...
𝗗𝗲𝘀𝗰𝗮𝗿𝗴𝗮𝗿: https://windmill.dev/
Descargar paper
✅ En adición al orquestador, ofrece un entorno de ejecución para cada uno de los lenguajes soportados y la posibilidad de diseñar interfaces personalizadas para cada script o flow a ejecutar, para poder ver de manera más intuitiva las entradas necesarias o los resultados obtenidos.
✅ La herramienta puede ser utilizada como app en la nube o en su vertiente self-hosted, y en ambos casos podemos trabajar desde la interfaz web o su CLI indistintamente.
𝗟𝗮 𝗮𝗿𝗾𝘂𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗮 𝗱𝗲 W𝗶𝗻𝗱𝗺𝗶𝗹𝗹 𝗲𝘀 𝗿𝗲𝗹𝗮𝘁𝗶𝘃𝗮𝗺𝗲𝗻𝘁𝗲 𝘀𝗲𝗻𝗰𝗶𝗹𝗹𝗮 si abstraemos un poco.
Los componentes más relevantes de la arquitectura son:
· Windmill server: Se trata del servidor principal, y constituye el cerebro de Windmill. Dispone de una interfaz web para operar con los objetos del sistema.
· Windmill database: Se encarga de almacenar los metadatos de los scripts y los flows, información relevante sobre las ejecuciones, variables definidas...
· Windmill worker: Encargado de la ejecución de los scripts y flows, se pone en contacto periódicamente con el servidor principal para consultar si hay trabajo que realizar. Se recomienda tener varios en funcionamiento para aumentar la disponibilidad.
· Windmill lsp: Módulo que permite el uso de intellisense en el editor web del servidor principal.Os incluyo también una compartiva con Apache Airflow