Apache Airflow — платформа для программного описания, планирования и мониторинга рабочих процессов в виде Python-кода (Dags).
Netflix/maestro
Универсальный оркестратор workflow от Netflix для планирования и запуска конвейеров данных и ML в формате workflow-as-a-service.
Open source альтернатива:Apache Airflow
- Звёзды
- 3,853
- Форки
- 311
- Открытые issues
- 39
- Последний коммит
- вчера
Что это?
Maestro — оркестратор workflow, изначально созданный в Netflix для запуска конвейеров данных и машинного обучения. Пользователи описывают workflow как ориентированные ациклические графы (DAG) заданий, а затем планируют, запускают и отслеживают их через API сервера. Проект написан на Java и работает на Spring Boot.
Сервер предоставляет версионируемый REST API для создания workflow, запуска задач и получения сведений об экземплярах и запусках шагов. Workflow можно загружать в формате YAML или JSON, а Python SDK (maestro-sdk) позволяет собирать их в коде. В инструкциях по настройке приведён пример полного цикла сборки, запуска и активации.
В репозитории есть модуль AWS, который локально работает с LocalStack для SQS и SNS, а также вариант выполнения заданий в Kubernetes. Дополнительный сервис maestro-extensions обрабатывает события сервера и предоставляет представления, например развёрнутые foreach-шаги.
Ключевые возможности
- 01Описывает workflow как DAG из заданий, передаваемые в формате YAML или JSON.
- 02Предоставляет версионируемый REST API для создания, запуска и просмотра workflow и запусков.
- 03Предлагает Python SDK для создания и отправки workflow.
- 04Поддерживает интеграцию с AWS через обработку событий SQS и SNS.
- 05Позволяет выполнять задания в Kubernetes.
- 06Предоставляет сервис расширений с представлениями, разворачивающими foreach.
Сценарии использования
- Планирование регулярных ETL- или ELT-конвейеров для инженерии данных.
- Оркестрация workflow для обучения моделей машинного обучения и пакетного скоринга.
- Запуск большого количества заданий обработки данных через управляемый сервис workflow с API.
- Оценка workflow-движка в стиле Netflix для внутренней платформы данных.
Быстрый старт
- 1
Установите необходимые компоненты: Git, Java 21, Gradle и Docker
- 2
Соберите проект
./gradlew build - 3
Запустите сервер
./gradlew bootRun - 4
Создайте пример рабочего процесса через 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
Что важно знать
- Для сборки и запуска необходимы Java 21, Gradle и Docker.
- Проект создан как крупная внутренняя платформа; для самостоятельного хостинга потребуется настроить окружение.
- Для локального тестирования некоторых функций, например режима AWS, нужны Docker Compose и LocalStack.
Темы
Частые вопросы
- Что такое maestro?
- Универсальный оркестратор workflow от Netflix для планирования и запуска конвейеров данных и ML в формате workflow-as-a-service. Maestro — оркестратор workflow, изначально созданный в Netflix для запуска конвейеров данных и машинного обучения. Пользователи описывают workflow как ориентированные ациклические графы (DAG) заданий, а затем планируют, запускают и отслеживают их через API сервера. Проект написан на Java и работает на Spring Boot.
- maestro можно использовать бесплатно? Какая у него лицензия?
- maestro распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- maestro всё ещё поддерживается?
- Активно поддерживается. Последний коммит в maestro — 5 нояб. 2026 г..
- Для чего можно использовать maestro?
- Планирование регулярных ETL- или ELT-конвейеров для инженерии данных. Оркестрация workflow для обучения моделей машинного обучения и пакетного скоринга. Запуск большого количества заданий обработки данных через управляемый сервис workflow с API. Оценка workflow-движка в стиле Netflix для внутренней платформы данных.
- Как установить maestro?
- Установите необходимые компоненты: Git, Java 21, Gradle и Docker Соберите проект: ./gradlew build Запустите сервер: ./gradlew bootRun Создайте пример рабочего процесса через 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
- Где скачать maestro?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Netflix/maestro
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Платформа оркестрации с открытым исходным кодом для запуска событийных и запланированных рабочих процессов с данными, ИИ и инфраструктурой, описанных в YAML.
Платформа оркестрации на Python для описания, запуска и мониторинга данных: таблиц, датасетов, ML-моделей и отчётов.
Python-фреймворк ETL для потоковой обработки, аналитики в реальном времени, LLM-пайплайнов и RAG на базе движка на Rust.
Распределённая low-code-платформа для оркестрации данных: помогает создавать, планировать и отслеживать сложные конвейеры обработки данных.
Нативный для контейнеров движок оркестрации параллельных задач в Kubernetes, реализованный как CRD.