Я протестировал инструмент, который пытается убить Apache Airflow (Kestra)

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

스크립트

00:00:00Это Kestra, стартап, который недавно привлек 25 миллионов долларов на одном обещании:
00:00:06убить Apache Airflow. И их главный трюк кажется почти оскорбительно простым.
00:00:12Вы перестаете писать пайплайны данных на Python и начинаете писать их на YAML.
00:00:17Послушайте, ведь эта вещь гораздо значимее, чем кажется.
00:00:21Позвольте показать, как это работает, в ближайшие пару минут.
00:00:29Представьте цепочку заданий, которые должны выполняться по порядку: собрать данные, очистить их,
00:00:35загрузить в базу данных, а затем обратиться к API, чтобы запустить следующий процесс. Это можно настроить с помощью
00:00:41Cron. Но как только один шаг дает сбой — всё пропадает. Ни повторов, ни логов, ни малейшего представления, что именно сломалось.
00:00:48Именно эту проблему и призваны решать инструменты оркестрации. И Airflow, честно говоря,
00:00:54был королем в этой сфере долгие годы. Проблема Airflow в том, что каждый пайплайн — это
00:00:58программа на Python, которую нужно писать, поддерживать и отлаживать. Вся система тяжеловесна, и просто
00:01:04запустить ее на своей машине — удовольствие сомнительное. Если вам нравятся инструменты для кодинга,
00:01:09ускоряющие рабочий процесс, обязательно подпишитесь. Мы постоянно выпускаем новые видео.
00:01:14Теперь суть Kestra в том, что рабочий процесс вообще не должен быть программой. Это должна быть
00:01:19просто конфигурация. Позвольте показать, что это значит на самом деле. Я в редакторе браузера,
00:01:24пишу маленький поток на YAML. Пара шагов: один запускает скрипт Python, другой — shell-
00:01:32команду. Я нажимаю «выполнить» и наблюдаю за экраном. Диаграмма подсвечивает каждый шаг в реальном времени
00:01:41по мере его выполнения. Я могу перейти к таймлайну, чтобы увидеть время выполнения каждого фрагмента, и сразу кликнуть
00:01:47на лог любого шага. Весь этот пайплайн отработал, а я не написал ни одной строчки
00:01:53кода оркестрации. Итак, вот как это работает. Каждый рабочий процесс — это то, что они называют
00:02:00«потоком» (flow), и по сути, это просто YAML. Список задач и триггер, который их запускает. Задачи
00:02:08не зависят от языка программирования, и это здесь главное. Один поток может запускать Python, Node, затем bash, SQL-запрос,
00:02:15а потом поднять контейнер — всё в одной последовательности. Airflow заставляет вас использовать Python. N8N хочет,
00:02:22чтобы вы использовали JavaScript. Kestra же не важно, на чем написан каждый шаг. А триггеры
00:02:27встроены прямо в систему. Запускайте по расписанию, как в Cron, активируйте по вебхуку,
00:02:34при появлении файла в бакете или вызывайте через API. Еще один плюс: код и визуальный
00:02:39конструктор связаны. Редактирование одного автоматически обновляет другое. Почему стоит
00:02:46выбрать это вместо привычных инструментов, например Airflow? В сравнении с Airflow ваш пайплайн
00:02:53превращается в чистую конфигурацию, которую может прочитать и одобрить при пулл-реквесте даже тот,
00:02:59кто не знает Python. А разработчики утверждают, что их движок обрабатывает параллельные задачи лучше,
00:03:05чем планировщик Airflow. Это здорово, но в отличие от Zapier или Make, здесь нет SaaS и платы
00:03:12за каждую задачу. Инструмент создан для разработчиков и инфраструктуры, и вы хостите его сами. А по сравнению с обычным Cron
00:03:19вы получаете повторы, таймауты, реальную карту зависимостей и полноценный UI «из коробки». Kestra утверждает,
00:03:26что выполнила 2 миллиарда рабочих процессов в 2025 году. Это в 20 раз больше, чем годом ранее. И среди клиентов
00:03:32такие компании, как Apple, JP Morgan, Toyota и Bloomberg. Но эти цифры роста взяты
00:03:38прямо из компании, а не из стороннего аудита. Так что относитесь к этому скептически. Но всё больше
00:03:43людей делают ставку на то, что этот декларативный, конфигурационный подход к оркестрации — будущее
00:03:49всей отрасли. Есть, конечно, нюансы. Во-первых, это Java-приложение, а JVM прожорлива. Нужно около
00:03:584 ГБ оперативной памяти и пара ядер, чтобы сервер работал спокойно. Во-вторых, YAML — мечта для
00:04:06чистых линейных пайплайнов, но как только нужна сложная динамическая логика ветвления, он начинает
00:04:11сопротивляться. Честно говоря, инструменты на базе Python справляются с этим гораздо лучше. И наконец, Kestra — это open core.
00:04:18То есть сам движок — настоящий open source, но SSO, управление доступом на основе ролей и аудит-логи
00:04:24находятся за платным доступом. Так что бесплатная версия дает вам один общий логин. И всё. Это
00:04:31прекрасно подходит, если вы работаете в одиночку, но станет проблемой, когда понадобится реальная система
00:04:36управления для нескольких пользователей без оплаты. Стоит ли его использовать? Что ж, последнее может стать
00:04:42решающим фактором. Если вы хотите, чтобы оркестрация была читаемой конфигурацией, а не Python-кодом, это
00:04:47действительно крутой инструмент. Он нативно работает на Apple Silicon. Запуск на Mac происходит через одну
00:04:53команду Docker run, и дашборд открывается на localhost. Попробуйте. Если вы уже
00:04:59попробовали, поделитесь мыслями ниже. Если вам нравятся такие советы по программированию, обязательно
00:05:03подпишитесь. Мы постоянно выпускаем новые видео.

핵심 요약

Kestra заменяет написание кода оркестрации на языке Python конфигурацией в формате YAML, предоставляя визуализацию и повторы задач без необходимости разработки сложной инфраструктуры пайплайнов.

하이라이트

  • Kestra использует декларативный YAML-код вместо написания оркестрации пайплайнов на Python.

  • Система поддерживает выполнение задач на различных языках, включая Python, Node.js, SQL и Bash, внутри одного потока.

  • В 2025 году в системе было выполнено 2 миллиарда рабочих процессов.

  • Для работы сервера Kestra требуется не менее 4 ГБ оперативной памяти и выделенные вычислительные мощности CPU из-за использования JVM.

  • Базовая версия Kestra является open-core, однако функции SSO, управления ролями и аудита доступны только в платной версии.

  • Пользовательский интерфейс Kestra предоставляет встроенную карту зависимостей, логи и визуализацию выполнения задач в реальном времени.

타임라인

Ограничения традиционной оркестрации

  • Традиционные системы на Python требуют значительных усилий для написания, поддержки и отладки кода оркестрации.
  • Использование стандартных инструментов вроде Cron не обеспечивает механизмы повторов, логирования и мониторинга при сбоях.

При использовании классических подходов сбой на одном этапе цепочки приводит к полной остановке процесса без возможности отследить причину. Apache Airflow решает проблему автоматизации, но требует от разработчика поддержки полноценной программы на языке Python, что усложняет локальный запуск и сопровождение системы.

Декларативный подход Kestra

  • Рабочий процесс описывается как конфигурация YAML, а не как исполняемый код.
  • Система поддерживает интеграцию задач на Python, Node.js, Bash и SQL в рамках одной последовательности.
  • Инструмент автоматически визуализирует выполнение потока и позволяет просматривать логи каждого шага через браузерный UI.

Kestra избавляет от необходимости писать код оркестрации, превращая пайплайны в читаемые конфигурационные файлы. Триггеры встроены непосредственно в систему, что позволяет запускать процессы по расписанию, через вебхуки, API или при появлении файлов в хранилище. Изменения в визуальном конструкторе автоматически синхронизируются с YAML-кодом.

Технические требования и ограничения

  • Kestra потребляет около 4 ГБ оперативной памяти для работы серверной части на Java Virtual Machine.
  • YAML-конфигурации эффективны для линейных пайплайнов, но уступают Python в реализации сложной динамической логики ветвления.
  • Расширенные функции безопасности и администрирования закрыты платной подпиской в рамках open-core модели.

Несмотря на масштабное использование крупными компаниями, инструмент требует определенных аппаратных ресурсов для работы JVM. Бесплатная версия ограничена одним пользователем, что может создавать сложности в командной работе. Для пользователей Apple Silicon доступна установка через Docker, обеспечивающая быстрый запуск системы локально.

커뮤니티 글

아직 글이 없습니다. 이 영상에 대한 첫 번째 글을 작성해 보세요!

이 영상에 대해 글쓰기