Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: CCXII Международной научно-практической конференции «Научное сообщество студентов: МЕЖДИСЦИПЛИНАРНЫЕ ИССЛЕДОВАНИЯ» (Россия, г. Новосибирск, 15 мая 2025 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Орешин В.В. РАЗРАБОТКА ETL-ПРОЦЕССОВ ПРИ ПОМОЩИ APACHE AIRFLOW // Научное сообщество студентов: МЕЖДИСЦИПЛИНАРНЫЕ ИССЛЕДОВАНИЯ: сб. ст. по мат. CCXII междунар. студ. науч.-практ. конф. № 9(211). URL: https://sibac.info/archive/meghdis/9(211).pdf (дата обращения: 18.05.2025)
Проголосовать за статью
Готовится к изданию
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

РАЗРАБОТКА ETL-ПРОЦЕССОВ ПРИ ПОМОЩИ APACHE AIRFLOW

Орешин Виталий Валентинович

студент, кафедра прикладной математики и компьютерных наук, Тульский государственный университет,

РФ, г. Тула

Афанасьева Светлана Михайловна

научный руководитель,

канд. техн. наук, доц., Тульский государственный университет,

РФ, г. Тула

ETL PROCESS DEVELOPMENT USING APACHE AIRFLOW

 

Vitaliy Oreshin

student, Department of Applied Mathematics and Computer Science, Tula State University,

Russia, Tula

Svetlana Afanasyeva

scientific supervisor, PhD in Technical Sciences, associate professor, Tula State University,

Russia, Tula

 

АННОТАЦИЯ

В статье рассматривается применение Apache Airflow для разработки и автоматизации ETL-процессов — извлечения, трансформации и загрузки данных. Подробно освещаются архитектура Airflow, понятие DAG (Directed Acyclic Graph), расписание задач и механизмы мониторинга. Представлен пример DAG-графа, демонстрирующий типичную структуру ETL-конвейера.

ABSTRACT

The article discusses the use of Apache Airflow for the development and automation of ETL processes — Extract, Transform, Load. It covers the architecture of Airflow, the concept of DAG (Directed Acyclic Graph), task scheduling, and monitoring mechanisms. An example DAG graph is presented, demonstrating a typical ETL pipeline structure. 

 

Ключевые слова: pache Airflow, ETL, DAG, автоматизация, пайплайн, оркестрация.

Keywords: Apache Airflow, ETL, DAG, automation, pipeline, orchestration.

 

С развитием цифровых технологий и увеличением объёмов данных возникает необходимость в построении надёжных систем обработки и интеграции информации. Важную роль в этом процессе играют ETL-пайплайны (Extract — извлечение, Transform — преобразование, Load — загрузка), которые позволяют подготовить данные к аналитике и хранению.

Одним из самых мощных инструментов для построения ETL является Apache Airflow — open-source платформа, созданная в Airbnb и поддерживаемая сообществом Apache. Её основное преимущество — организация процессов в виде DAG (Directed Acyclic Graph) — ориентированного ацикличного графа [1, c. 67].

DAG (Directed Acyclic Graph) — это структура, в которой задачи (tasks) связаны между собой направленными рёбрами, и при этом в графе не может быть циклов. Это означает, что выполнение задач имеет строгий порядок, и никакая задача не может быть выполнена до завершения своих предшественников. Каждый DAG в Airflow описывается с помощью Python-кода и включает в себя: расписание (schedule_interval), зависимости между задачами, логики retry/timeout, использование операторов (например, BashOperator, PythonOperator, PostgresOperator и т.д.). Ниже представлен график, визуализирующий простой DAG-пайплайн в Airflow:

Рисунок 1. Визуализация Dag-пайплайна в Apache Airflow

 

В приведённом примере DAG состоит из пяти задач:

Task A — начальная задача (инициализация, например, подключение к источнику данных или запуск пайплайна).

Task B и Task C — выполняются параллельно, обе зависят от Task A. Это может быть вариант обработки разных частей данных или разные типы трансформаций (например, одна — агрегация, другая — фильтрация).

Task D — зависит от обеих задач: Task B и Task C. Это означает, что Task D стартует только после их завершения. Это типичный подход для синхронизации потоков.

Task E — финальная задача, запускается после завершения Task D. Обычно это загрузка в хранилище, уведомление или очистка временных файлов.

Также для выявления преимуществ инструментария Apache Airflow необходимо провести его анализ с конкурентными платформами:

Таблица 1.

Сравнение Apache Airflow с конкурентными платформами

Инструмент

Поддержка DAG

Масштабируемость

Уровень

автоматизации

Apache Airflow

Да

Высокая

Высокий

Talend

Частично

Средняя

Высокий

Luigi

Частично

Средняя

Высокий

SSIS

Нет

Средняя

Средний

 

Apache Airflow является мощным инструментом для организации сложных ETL-процессов. Его использование позволяет предприятиям автоматизировать подготовку и интеграцию данных, повысить надёжность рабочих процессов и сократить затраты на поддержку инфраструктуры обработки данных, а сам инструментарий обладает неоспоримым набором преимуществ:

  • Расширяемость: кастомные операторы и плагины.
  • Мониторинг: web-интерфейс с графами выполнения, логами, статусами задач.
  • Расписание: поддержка cron-выражений и триггеров.
  • Масштабируемость: можно развернуть в Kubernetes, Docker и облаках (GCP, AWS, Azure).

 

Список литературы:

  1. Харенслак Б., де Руйтер Дж. Apache Airflow и конвейеры обработки данных. — М.: ДМК-Пресс, 2021. — 502 с.
Проголосовать за статью
Готовится к изданию
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий