ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

Apache Airflow XCom с нуля: как передавать данные между задачами DAG (пошаговый разбор)

Автор: Корсаков о Data

Загружено: 2025-12-18

Просмотров: 108

Описание: 🔥 Хочешь понять, как передавать данные между задачами в Apache Airflow, не запутаться в XCom’ах и не превратить metastore в свалку?
В этом видео разберём XCom в Airflow с нуля на живых примерах DAG’ов: как пушить и пуллить значения, когда XCom — это удобно, а когда это прямой путь к боли и антипаттернам.

Ссылки:
Менторство/консультации по Data Engineering — https://korsak0v.notion.site/Data-Eng...
TG-канал — https://t.me/DataLikeQWERTY
Instagram —   / i__korsakov  
Habr — https://habr.com/ru/users/k0rsakov/pu...

🔍 Что в видео:

🧠 Что такое XCom в Apache Airflow и зачем вообще передавать данные между задачами DAG
⚙️ Простой DAG simple_push_xcom_values: как создаётся XCom «по умолчанию» и где его посмотреть в Airflow UI
🔎 Где живут XCom’ы:
— вкладка XCom в веб-интерфейсе Airflow
— таблица xcom в метасторе через DBeaver

🧪 DAG simple_dag:
— что такое task_instance (ti) в контексте задачи
— почему лучше явно использовать task_instance, а не полагаться на «магический» ti
— как TaskInstance связан с текущим DAGRun и состоянием задач
— почему стандартный Debug в IDE не даёт полноценного TaskInstance и как заглянуть в «кишки» XCom’ов через код

🔄 DAG simple_communications_between_tasks:
— как одна задача пушит значение через xcom_push, а другая забирает его через xcom_pull
— чем отличается ключ XCom от имени таски и зачем задавать свой key
— как по логам увидеть, что одна задача ничего не возвращает, а другая всё равно получает значение из XCom

🎯 DAG simple_communications_between_tasks_with_target_values:
— функция-таска get_common_date как единый источник общей даты для всего пайплайна
— как написать таску, которая пушит данные в XCom и потом забирать их по имени функции / таски
— пример context.get("task_instance").xcom_pull("get_common_date") и разбор, что здесь реально происходит под капотом

🚫 Почему не стоит злоупотреблять XCom:
— сложно дебажить и тестировать такой код, особенно в проде
— сильная зависимость от Airflow и метастора: без них логика не воспроизводится
— метастор засоряется XCom-записями, значения живут «вечно», если их не чистить
— как быстро растут объёмы записей при десятках / сотнях DAG’ов и частых запусках
— где посмотреть ограничения по размеру XCom (файл xcom.py в исходниках Airflow)
— когда стоит переходить на Custom XCom Backend и внешние хранилища

✅ Когда XCom действительно полезен:
— передача статусов и сигналов между задачами (доступность API, состояние БД, флаги проверок)
— отметка этапов пайплайна как «выполнено», чтобы повысить прозрачность выполнения DAG
— хранение небольших служебных значений, а не данных уровня DWH

💣 Антипаттерны при работе с XCom:
— передавать параметры и данные между разными DAG’ами через XCom
— складывать большие объёмы данных в XCom вместо нормального хранилища
— использовать XCom как универсальную БД «на все случаи жизни»
— игнорировать чистку XCom и рост метастора, пока он не начнёт замедлять Airflow

🗂️ GitHub репозиторий с кодом:
https://github.com/k0rsakov/pet_proje...

✉️ Вопросы, обучение, консультации по Data Engineering и Apache Airflow — пиши в личку:
https://korsak0v.notion.site/Data-Eng...

💡 В конце видео — практические рекомендации:
когда XCom — хороший инструмент для обмена статусами и небольшими значениями между задачами,
а когда лучше спроектировать пайплайн так, чтобы данные жили во внешнем хранилище, а Airflow отвечал только за оркестрацию.

Таймкоды:
00:00 – Начало
00:15 – Про инфраструктуру
01:24 – Простой DAG по отправке значений в XCom
04:11 – Что такое TaskInstance / ti
06:49 – Простой пример взаимодействия с XCom внутри DAG
11:04 – Боевой пример применения XCom внутри DAG для работы с API
16:48 – Рекомендации


#apacheairflow #airflow #xcom #airflowxcom #dag #apacheairflowtutorial #airflowtutorial #airflowforbeginners #dataengineering #etl #elt #dwh #python #dataengineer #junior #middle #pipeline

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
Apache Airflow XCom с нуля: как передавать данные между задачами DAG (пошаговый разбор)

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

Как правильно настроить Sensors в Apache Airflow: ExternalTaskSensor, soft_fail, catchup и backfill

Как правильно настроить Sensors в Apache Airflow: ExternalTaskSensor, soft_fail, catchup и backfill

Apache Airflow: пошаговая настройка DAG под задачу — от простого примера до продакшена |default_args

Apache Airflow: пошаговая настройка DAG под задачу — от простого примера до продакшена |default_args

Основы тестирования для дата-инженеров. Гайд от А до Я: PyTest, Airflow, ETL, Python, Coverage, SQL

Основы тестирования для дата-инженеров. Гайд от А до Я: PyTest, Airflow, ETL, Python, Coverage, SQL

Как в 1С не остаться на уровне новичка в 2026 году?

Как в 1С не остаться на уровне новичка в 2026 году?

Чем ОПАСЕН МАХ? Разбор приложения специалистом по кибер безопасности

Чем ОПАСЕН МАХ? Разбор приложения специалистом по кибер безопасности

Как правильно настроить Triggers в Apache Airflow: TriggerDagRunOperator,logical_date, reset_dag_run

Как правильно настроить Triggers в Apache Airflow: TriggerDagRunOperator,logical_date, reset_dag_run

ЛУЧШАЯ БЕСПЛАТНАЯ НЕЙРОСЕТЬ Google, которой нет аналогов

ЛУЧШАЯ БЕСПЛАТНАЯ НЕЙРОСЕТЬ Google, которой нет аналогов

Как ИИ и Нейросети уничтожат онлайн курсы и обучающий контент в 2026. NotebookLM от Google - обзор

Как ИИ и Нейросети уничтожат онлайн курсы и обучающий контент в 2026. NotebookLM от Google - обзор

20+ Нейросетей GOOGLE Которые Не Должны Быть Бесплатными

20+ Нейросетей GOOGLE Которые Не Должны Быть Бесплатными

Firecrawl + MCP-сервер в n8n: Забудь про сложный парсинг и скрапинг! Идеальный AI агент

Firecrawl + MCP-сервер в n8n: Забудь про сложный парсинг и скрапинг! Идеальный AI агент

ETL Лучшие Практики: Полное руководство для начинающих и не только (ETL Best Practices)

ETL Лучшие Практики: Полное руководство для начинающих и не только (ETL Best Practices)

Kafka в 2025 для дата-инженера: Полный разбор на практике с Python, S3 и ClickHouse.

Kafka в 2025 для дата-инженера: Полный разбор на практике с Python, S3 и ClickHouse.

Самая сложная модель из тех, что мы реально понимаем

Самая сложная модель из тех, что мы реально понимаем

Фабрика DAG в Airflow: Infrastructure as Code для Data Engineer | Генерация DAG через JSON/YAML

Фабрика DAG в Airflow: Infrastructure as Code для Data Engineer | Генерация DAG через JSON/YAML

Docker за 20 минут

Docker за 20 минут

КАК НЕЛЬЗЯ ХРАНИТЬ ПАРОЛИ (и как нужно) за 11 минут

КАК НЕЛЬЗЯ ХРАНИТЬ ПАРОЛИ (и как нужно) за 11 минут

Excel и DeepSeek решат ВСЕ твои задачи за секунды! [Полный гайд]

Excel и DeepSeek решат ВСЕ твои задачи за секунды! [Полный гайд]

Краткий обзор новой версии n8n 2.0  🚀

Краткий обзор новой версии n8n 2.0 🚀

Бесплатные ИИ-инструменты, которые побеждают гигантов!

Бесплатные ИИ-инструменты, которые побеждают гигантов!

Лучший пет-проект по созданию витрины данных (The best pet project for creating a data mart)

Лучший пет-проект по созданию витрины данных (The best pet project for creating a data mart)

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]