Начиная с Apache Airflow 1.10.2 у сенсоров появился аргумент mode
через который задаётся режим их работы. Сейчас есть 2 основных режима:
Также есть smart sensor, который нужно активировать через airflow.cfg
, но о нём читайте в конце курса.
Что же выбрать между poke
и reschedule
? Если сенсор работает в режиме poke
, то воркер, исполняющий его, всегда находится в режиме работы и не может исполнять другие задачи (между poke_interval
у него выполняется sleep). Я не рекомендую использовать этот режим, если у вас большой интервал ожидания между периодическими проверками. Используйте poke
, если требуется часто делать проверку (до 1 минуты), для всего что дольше — reschedule
. В режиме reschedule
воркер освобождается, и сенсор помечается для повторного перезапуска через poke_interval
(в случае, если критерий успеха не был достигнут и нужен перезапуск).
kgbt++ 20 Июнь 2023
Smart sensors, an “early access” feature added in Airflow 2, are now deprecated and will be removed in Airflow 2.4.0. They have been superseded by Deferrable Operators, added in Airflow 2.2.0.