# Учебник по Apache Airflow для начинающих Добро пожаловать в учебник по Apache Airflow! Этот курс создан специально для тех, кто уже освоил Python и SQL и готов познакомиться со своим первым инструментом для ETL-процессов. К учебнику прилагается готовый практический стенд, позволяющий сразу применить полученные знания на практике. ## 📚 Введение Apache Airflow — это мощный оркестратор рабочих процессов с открытым исходным кодом, который стал стандартом де-факто в мире обработки данных. Если вы работаете с автоматизацией процессов обработки информации — будь то подготовка данных для машинного обучения, создание отчетов или интеграция данных из различных источников — Airflow поможет вам организовать эти процессы эффективно и надежно. Этот учебник разработан с учетом того, что вы: - Имеете базовые знания Python и SQL - Хотите освоить свой первый ETL-инструмент - Нуждаетесь в практическом руководстве с понятными объяснениями Мы начнем с основ и постепенно перейдем к продвинутым возможностям, чтобы вы могли уверенно использовать Airflow в реальных проектах. Курс ориентирован на версию Airflow 2.5 и использует практический подход с множеством примеров и визуальных материалов. ## 🎯 Что вы узнаете - **Основы Airflow**: что это такое, для каких задач используется и почему он стал таким популярным - **Ключевые концепции**: DAG, задачи, операторы и другие фундаментальные понятия - **Архитектура**: как устроен Airflow внутри и как это влияет на вашу работу - **Интерфейс**: как эффективно использовать веб-интерфейс для мониторинга и управления - **Практическое создание DAG**: пошаговое руководство по созданию ваших первых рабочих процессов - **Отладка и мониторинг**: как понимать статусы задач и быстро находить проблемы - **Продвинутые возможности**: шаблоны, параметры, управление временем и другие мощные функции ## 📖 Содержание курса ### [01. Введение в Airflow](01%20-%20Введение%20в%20Airflow.md) - Почему Apache Airflow стал незаменимым инструментом для работы с данными - Преимущества использования Airflow - Когда Airflow может не подойти - Практическое применение Airflow - Как компании развертывают Airflow ### [02. Понятное введение в ключевые понятия Airflow](02%20-%20Понятное%20введение%20в%20ключевые%20понятия%20Airflow.md) - Основные концепции и терминология - Что такое DAG и как он работает - Операторы, задачи и зависимости ### [03. Как устроен Airflow внутри](03%20-%20Как%20устроен%20Airflow%20внутри.md) - Архитектура Airflow - Компоненты системы - Как работает планировщик и исполнитель ### [04. Знакомство с интерфейсом Airflow для начинающих](04%20-%20Знакомство%20с%20интерфейсом%20Airflow%20для%20начинающих.md) - Навигация по веб-интерфейсу - Основные разделы и их назначение - Как мониторить и управлять DAG ### [05. Основы построения DAG-файлов в Airflow](05%20-%20Основы%20построения%20DAG-файлов%20в%20Airflow.md) - Структура DAG-файла - Создание ваших первых задач - Настройка расписаний и параметров ### [06. Статусы задач в Airflow](06%20-%20Статусы%20задач%20в%20Airflow.md) - Что означают цвета и статусы задач - Жизненный цикл задачи - Как отлаживать проблемы и работать с ошибками ### [07. Гибкие шаблоны и настройки в Airflow](07%20-%20Гибкие%20шаблоны%20и%20настройки%20в%20Airflow.md) - Использование Jinja-шаблонов - Параметризация DAG - Глобальные переменные и соединения ### [08. Управление временем в Airflow](08%20-%20Управление%20временем.md) - Расписания и интервалы запуска - Работа с временными зонами - Понимание execution_date и других временных концепций ### [09. Продвинутые возможности Airflow](09%20-%20Продвинутые%20возможности%20Airflow.md) - Расширенные операторы и сенсоры - Обработка ошибок и повторные попытки - Оптимизация и масштабирование DAG ## 🛠️ Практический стенд К этому учебнику прилагается полноценный стенд Apache Airflow, который позволяет сразу приступить к практике и закрепить полученные знания. В папке [`airflow-docker`](airflow-docker/) вы найдете готовую среду для экспериментов с 6 готовыми DAG'ами разной сложности и практическими заданиями для каждого из них. Стенд включает настроенную среду с PostgreSQL для тренировок, образцы данных и детальные инструкции для практических занятий. Подробную информацию о возможностях стенда и инструкции по запуску смотрите в [`README.md`](airflow-docker/README.md) папки `airflow-docker`. ## 🚀 Как использовать этот учебник 1. **Изучайте теорию**: начните с Введения в Airflow и переходите к следующим главам по порядку 2. **Практикуйтесь на стенде**: после каждой главы выполняйте соответствующие задания в практическом стенде 3. **Создавайте свои DAG**: применяйте полученные знания для решения реальных задач 4. **Используйте визуальные материалы**: в учебнике много изображений и диаграмм для лучшего понимания 5. **Экспериментируйте**: не бойтесь пробовать разные настройки и сценарии на учебном стенде ## 📝 Технические требования - **Python**: базовое знание языка - **SQL**: понимание основных запросов и концепций - **Airflow**: версия 2.9 (на которой ориентирован курс) - **Среда разработки**: любой текстовый редактор или IDE с поддержкой Python ## 💡 Советы для успешного обучения - **Не торопитесь**: лучше глубоко понять каждый концепт, чем быстро пройти весь курс - **Задавайте вопросы**: если что-то непонятно, вернитесь к предыдущим материалам - **Делайте заметки**: записывайте важные моменты и примеры кода - **Применяйте на практике**: сразу пробуйте создавать свои DAG для реальных задач --- *Этот учебник создан для начинающих специалистов в области данных и инженерии. Все материалы ориентированы на практическое применение и пошаговое освоение Apache Airflow.*