Нужен ли нам Airflow или куча отдельных инструментов?
Несколько дней назад в сети появился пост, который активно обсуждают до сих пор. Давайте разберемся, в чем дело и из-за чего сыр-бор.
⚡️ Итак, автор поста обращает внимание на эволюцию любых больших платформ: старт, развитие и неизбежную фрагментацию на более удобные и узкоспециализированные инструменты. Автор приводит пример, что много лет назад такое случилось с платформой Craigslist, а теперь, вероятно, это случится (или уже случилось) с Airflow.
Airflow сейчас позволяет выполнять множество задач, связанных с данными; от операций по выгрузке и загрузке данных до создания отчетов, обработки с помощью Python и SQL-скриптов и синхронизации данных с BI-инструментами. Однако, уже существуют отличные самостоятельные инструменты, которые выполняют все эти задачи гораздо лучше, чем Airflow. Например, Fivetran и Airbyte можно использовать для загрузки и выгрузки данных, dbt — для преобразования данных, Census и Hightouch — для обратного ETL, Transform, Metriql, Supergrain — для метрик, Eppo — для экспериментов, MLOps — для машинного обучения. Все эти инструменты “отбирают” часть задач у Airflow и значительно трансформируют современный стек, который раньше часто строился внутри одного инструмента (платформы).
⚡️ Некоторые компании пытаются создать улучшенную версию Airflow, упрощая развертывание задач, делая их более масштабируемыми и т.д. Самой важной и обсуждаемой частью этого рассуждения стало то, что автор сомневается, что вообще есть необходимость в улучшении Airflow. Как он сам говорит: “Это похоже на попытку оптимизировать написание кода, который вообще не должен был быть написан“.
Тристан из dbt комментирует:
⚡️ Кейсы Craigslist и Airflow серьезно отличаются, как минимум потому, что пользователь первой платформы мог нуждаться лишь в одной из функций, а вот специалисты в сфере работы с данными нуждаются во всех инструментах платформы, поскольку они тесно взаимосвязаны.
⚡️ Затем, он предлагает свое видение развития Airflow: поскольку одному специалисту или даже команде не бывают нужны сразу все инструменты, удобнее было бы иметь 3 платформы с инструментами для задач инженеров данных, аналитиков и ML-разработчиков.
Тристан, как и прежде форсирует свою тему аналитических инженеров и отделяет их от всех остальных, что, конечно, dbt-юзерам очень нравится.
❓А вы что думаете про Airflow? Используете ли, пробовали ли Airflow как сервис в managed-исполнении?