Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про CI/CD: dag

Что такое DAG в Airflow?

Вопрос проверяет понимание основной концепции Airflow — DAG — и умение объяснить, как описываются workflow.

Короткий ответ

DAG в Airflow — это описание workflow в виде направленного ациклического графа. Он определяет задачи и зависимости между ними. DAG описывается кодом на Python. Airflow использует DAG, чтобы понимать порядок выполнения задач. Циклы в DAG запрещены.

Длинный ответ

Длинный ответ

DAG — это центральное понятие Airflow. Без него Airflow не знает, какие задачи существуют и в каком порядке их запускать.

Определение

DAG (Directed Acyclic Graph) — это направленный граф без циклов, который описывает задачи и зависимости между ними.

1. Из чего состоит DAG

DAG включает в себя:

  • уникальное имя;

  • расписание запуска;

  • набор задач;

  • зависимости между задачами.

Пример идеи DAG:

extract >> transform >> load

2. Почему DAG ациклический

Циклы запрещены, потому что:

  • невозможно определить начало выполнения;

  • задачи зависели бы друг от друга бесконечно.

Airflow проверяет DAG и не запустит его, если есть цикл.

3. DAG как описание, а не выполнение

Важно понимать:

  • DAG — это описание workflow;

  • задачи не выполняются при объявлении DAG;

  • выполнение происходит позже, по расписанию или вручную.

Это частая ошибка новичков.

4. Планирование запусков

Каждый запуск DAG:

  • называется DAG Run;

  • имеет логическую дату;

  • содержит набор Task Instance.

Это позволяет:

  • переигрывать прошлые запуски;

  • анализировать историю выполнения.

5. Практические рекомендации

При проектировании DAG:

  • делайте задачи маленькими и независимыми;

  • избегайте сложной логики на уровне DAG-файла;

  • чётко описывайте зависимости.

6. Краткий вывод

DAG — это декларативное описание workflow в Airflow. Он задаёт структуру и порядок выполнения задач, но не отвечает за их реализацию.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    5

  • Сложность:

    5

Навыки

  • CI/CD

    CI/CD

Ключевые слова

#dag

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.