Воздушный поток - сохранить состояние при повторной попытке - PullRequest
0 голосов
/ 13 октября 2019

My Airflow dag отправляет запрос HTTP PUT каждый час с указанием часа в теле. В случае неудачи я хочу, чтобы запрос на повторную попытку содержал исходный час в теле (даже через несколько дней).

Как мне этого добиться?

1 Ответ

0 голосов
/ 15 октября 2019

Есть несколько способов добиться этого, но я бы посоветовал заглянуть в Airflows XCOM: https://airflow.apache.org/concepts.html?highlight=xcom#concepts-xcom

Простой пример для вашего случая - создать группу доступности базы данных с 2 узлами. - NodeA и NodeB.

  1. NodeA запускается и сохраняет текущее время в XCOM
  2. Работает NodeB, извлекает время из XCOM NodeA и делает запрос PUT с этим значением втело.

Если бы вы хотели повторно запустить запрос PUT в будущем, вам нужно будет только очистить NodeB в DAG. Когда он снова запустится, он получит то же время, которое было изначально сохранено в XCOM NodeA.

...