Новое Распределяем каналы MAX по категориям и территориям. Читать новость
Загружаем изображение…
Загружаем изображение…
Загружаем изображение…
Загружаем изображение…

📕Передача данных между тасками задание (2/2)



Пройдемся по решению:

1) Пополняем родительский класс двумя дополнительными методами для REST запроса, хук вызывается в нашем операторе operProcess

2) Кастомный оператор, добавив его в папку модуль, для упрощения читаемости в самом DAG. В операторе мы получаем количество страниц и итерируем по всем страницам выгружая result в JSON (метод в хуке). По всем местам по всем страницах делается подсчет резидентов (residents_cnt) и по этому ключу делается сортировка списка и фильтруется до топ 3 располодении. Из этого списка формируется INSERT который передается implicit способом xcom.

3) Оператор operStore подключается к БД через PostgresХук и записывает данные

4) Сам DAG фаил. В данном примере передача данных делается явным подходом чтобы не писать xcom.push. В логике DAG используется pythonBranch оператор для выборка подхода при наличии или отсутсвии существующий таблицы в БД.

GitHub ссылка

#airflow #переда_данных #karpov_courses #hardDE
Просмотры: 41
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти