Files
airflow-manual/README.md
T

106 lines
9.4 KiB
Markdown

# Учебник по 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.*