Size: a a a

2020 September 01

ИГ

Игорь Гомановский... in Airflow
Max Efremov
это вроде лучше выглядит, хотя да, тоже не совсем понятно)
Subdag зато выглядит неплохо. похоже на то, что вы ищете
https://airflow.apache.org/docs/stable/concepts.html?highlight=subdag#subdags
источник

ВБ

Виталий Бикташев... in Airflow
class Chain:
   def __init__(self, *tasks):
       self._tasks = tasks
   
   def __rshift__(next_task):
       self._tasks[-1] >> next_task
       
   def __lshift__(prev_task):
       self._tasks[0] << prev_task


def foo():
   two = DummyOperator(task_id="two")
   three = DummyOperator(task_id="three")
   return Chain(two, three)


one = DummyOperator(task_id="one")
four = DummyOperator(task_id="four")
one >> foo() >> four

а если упороться...
источник

ME

Max Efremov in Airflow
Виталий Бикташев
class Chain:
   def __init__(self, *tasks):
       self._tasks = tasks
   
   def __rshift__(next_task):
       self._tasks[-1] >> next_task
       
   def __lshift__(prev_task):
       self._tasks[0] << prev_task


def foo():
   two = DummyOperator(task_id="two")
   three = DummyOperator(task_id="three")
   return Chain(two, three)


one = DummyOperator(task_id="one")
four = DummyOperator(task_id="four")
one >> foo() >> four

а если упороться...
😂
источник

ME

Max Efremov in Airflow
Игорь Гомановский
Subdag зато выглядит неплохо. похоже на то, что вы ищете
https://airflow.apache.org/docs/stable/concepts.html?highlight=subdag#subdags
источник

ME

Max Efremov in Airflow
вот так тогда будет с сабдагом, но на графе не очень красиво, надо зумить внутрь(
источник

ME

Max Efremov in Airflow
источник

ME

Max Efremov in Airflow
Виталий Бикташев
class Chain:
   def __init__(self, *tasks):
       self._tasks = tasks
   
   def __rshift__(next_task):
       self._tasks[-1] >> next_task
       
   def __lshift__(prev_task):
       self._tasks[0] << prev_task


def foo():
   two = DummyOperator(task_id="two")
   three = DummyOperator(task_id="three")
   return Chain(two, three)


one = DummyOperator(task_id="one")
four = DummyOperator(task_id="four")
one >> foo() >> four

а если упороться...
может быть это и не так уж и плохо) Не совсем нативное решение для аирфлоу, но более пайтоновое, наверное
источник

ME

Max Efremov in Airflow
Спасибо за помощь!
источник

AP

Abi Palagashvili in Airflow
господа, а как сделать spark коннектор?
Не вижу у себя в Conn Type spark’а
источник

ME

Max Efremov in Airflow
Переслано от Max Efremov
источник

ME

Max Efremov in Airflow
Должен быть
источник

ME

Max Efremov in Airflow
Точнее, типа наверное отдельного нет
источник

AP

Abi Palagashvili in Airflow
Max Efremov
Точнее, типа наверное отдельного нет
Conn type не надо туда впихивать?
источник

AP

Abi Palagashvili in Airflow
ладно, я попробую
источник

AP

Abi Palagashvili in Airflow
спасибо
источник
2020 September 02

C

Combot in Airflow
Добро пожаловать в самое дружелюбное комьюнити.
источник

ME

Max Efremov in Airflow
А у сабдага может быть другая периодичность запусков? У меня есть процесс процессинга кварталов, но внутри надо процессить 3 месяца отдельно. Т.е. чтобы каждые 3 месяца отработала 3 раза одна операция с прошедеми месяцами квартала
источник

OI

Oleg Ilinsky in Airflow
Сабдаг - это таск снаружи и даг внутри. Соответственно, либо через отдельный даг это надо делать, либо накостылять через ветвление типа PythonBranchOperator.
Ну или использовать prefect)) (в нём более гибкое расписание можно настраивать)
источник

ME

Max Efremov in Airflow
Oleg Ilinsky
Сабдаг - это таск снаружи и даг внутри. Соответственно, либо через отдельный даг это надо делать, либо накостылять через ветвление типа PythonBranchOperator.
Ну или использовать prefect)) (в нём более гибкое расписание можно настраивать)
я предпологал, что наружный даг сможет запустить внутренний, а тот нагонит пропущенное за 3 месяца, вроде в логику укладывается
источник

PA

Panchenko Andrey in Airflow
а можно делать же проверку внутри пайтон функции первый день это нового квартала или нет, и делать свое дело, если нет то пропускать
источник