Планирование воздушного потока, повторное выполнение сбойной задачи - PullRequest
0 голосов
/ 28 октября 2018

Я довольно новичок в воздушном потоке, хотя мне удалось написать код для чтения (хранилище данных) и записи (bigquery).Я не могу приступить к планированию своей работы / задач.Я хотел бы запускать задание каждые 2 часа, читать данные из источника за предыдущие 2 часа.Теперь, если задача не выполняется, я хотел бы повторить попытку вручную, но в течение 2 часов она должна была работать.Как мне это сделать?Я имею в виду несколько вещей:

  • Сохранение идентификатора задания и временного диапазона, который он должен был выполнить.И при повторных попытках я могу прочитать его из sqlite или другой базы данных.
  • В Airflow есть встроенная переменная, которая указывает на предполагаемое время выполнения для этой работы, которое я могу использовать в своем коде.

Должен ли я рассмотреть какой-то другой вариант?или любой из вышеперечисленных?

1 Ответ

0 голосов
/ 02 ноября 2018

Я предполагаю, что вы используете текущую дату и время (как сейчас ()) в своей задаче, не так ли?

Хорошей практикой является использование значения execution_date в контексте воздушного потока вместо вызова даты и времени.now () в вашем операторе, поскольку execution_date задания по расписанию не изменится, даже если вы повторно выполните DAG / tasks.

...