Выполнение заданий по расписанию или непрерывно
Вы можете периодически запускать задание Azure Databricks с типом запланированного триггера или обеспечить всегда активный запуск задания с типом непрерывного триггера.
Вы можете использовать расписание для автоматического запуска задания Azure Databricks в указанные времена и периоды. Можно определить простое расписание для периодического выполнения задания или расширенного расписания, которое используется cron
для определения определенного времени для периодического расписания. С помощью расширенного расписания можно также выбрать часовой пояс для расписания. Вы можете приостановить запланированное задание в любое время.
При выполнении задания с непрерывным триггером задания Azure Databricks гарантирует, что всегда выполняется одно активное выполнение задания. Запуск нового задания начинается после успешного завершения предыдущего выполнения или с состоянием сбоя или если экземпляр задания в данный момент не запущен.
Добавление расписания заданий
Тип запланированного триггера имеет два варианта:
- Определите базовое расписание для периодического выполнения задания на основе указанного единицы времени и интервала. Например, запланировать выполнение задания каждые двенадцать часов.
- Определите расширенное расписание, которое обеспечивает более контроль над периодом, временем и часовым поясом для запуска задания.
Чтобы настроить расписание для задания, выполните следующие действия:
- На боковой панели щелкните "Рабочие процессы".
- В столбце "Имя" на вкладке "Задания " щелкните имя задания.
- На панели сведений о задании нажмите кнопку "Добавить триггер".
- В типе триггера выберите scheduled.
- В поле "Расписание" выберите "Простой" или "Дополнительно".
- Простой. Укажите интервал и единицу времени для выполнения задания.
- Дополнительно: укажите период, время начала и часовой пояс. При необходимости установите флажок Показать синтаксис cron, чтобы отобразить и изменить расписание в синтаксисе Quartz Cron.
- Нажмите кнопку Сохранить.
Вы также можете запланировать задание записной книжки непосредственно в пользовательском интерфейсе записной книжки.
Примечание.
- Azure Databricks устанавливает минимальный интервал в 10 секунд между выполнениями, которые запускаются расписанием задания друг за другом, независимо от настройки секунд в выражении cron.
- Вы можете выбрать часовой пояс с переходом на летнее время или UTC. Если выбрать часовой пояс, который наблюдает летнее время, почасовое задание будет пропущено или может быть отложено на час или два , когда начинается или заканчивается летнее время. Для выполнения раз в час (абсолютное время) выбирайте UTC.
- Планировщик заданий не предназначен для заданий с низкой задержкой. Из-за проблем с сетью или облаком выполнение задания иногда может быть отложено до нескольких минут. В этих ситуациях запланированные задания выполняются сразу после доступности службы.
Приостановка и возобновление работы расписания заданий
Чтобы приостановить задание, нажмите кнопку "Приостановить " на панели сведений о задании.
Чтобы возобновить приостановленное расписание задания, нажмите кнопку "Возобновить".
Выполнение непрерывного задания
- На боковой панели щелкните "Рабочие процессы".
- В столбце "Имя" на вкладке "Задания " щелкните имя задания.
- Нажмите кнопку "Добавить триггер" на панели сведений о задании, нажмите кнопку "Добавить триггер" на панели сведений о задании, выберите "Непрерывный в типе триггера" и нажмите кнопку "Сохранить".
Чтобы остановить непрерывное задание, нажмите кнопку "Запустить сейчас" и нажмите кнопку "Остановить".
Примечание.
- Существует только один запущенный экземпляр непрерывного задания.
- Существует небольшая задержка между завершением выполнения и запуском нового запуска. Эта задержка должна быть менее 60 секунд.
- Нельзя использовать зависимости задач с непрерывным заданием.
- Нельзя использовать политики повторных попыток с непрерывным заданием. Вместо этого непрерывные задания используют экспоненциальный откат для управления сбоями выполнения задания.
- При нажатии кнопки "Запустить сейчас " на непрерывном задании, приостановленном запускается новое задание. Если задание неиспользуется, создается исключение.
- Чтобы непрерывное задание взяло новую конфигурацию задания, отмените существующий запуск, а затем автоматически запускается новый запуск. Вы также можете нажать кнопку " Перезапустить" , чтобы перезапустить задание с обновленной конфигурацией.
Как обрабатываются сбои для непрерывных заданий?
Задания Azure Databricks используют экспоненциальную схему обратного выхода для управления непрерывными заданиями с несколькими последовательными сбоями. Экспоненциальная обратная передача позволяет непрерывным заданиям выполняться без приостановки и вернуться в работоспособное состояние при возникновении сбоев, доступных для восстановления.
Если непрерывное задание превышает допустимое пороговое значение для последовательных сбоев, в следующем описано, как выполняются последующие запуски заданий:
- Задание перезапущено после периода повтора, заданного системой.
- Если следующий запуск задания завершается сбоем, период повтора увеличивается, а задание перезапускается после этого нового периода повтора.
- Для каждого последующего сбоя выполнения задания период повтора увеличивается до максимального периода повтора, заданного системой. После достижения максимального периода повтора задание продолжает выполняться с использованием максимального периода повтора. Количество повторных попыток непрерывного задания не ограничено.
- Если задание выполняется успешно и запускает новый запуск, или если выполнение превышает пороговое значение без сбоя, задание считается работоспособным, а последовательность отката сбрасывается.
Вы можете перезапустить непрерывное задание в экспоненциальном состоянии обратного выхода в пользовательском интерфейсе заданий или передать идентификатор задания в запрос POST /api/2.1/jobs/run-now в API заданий 2.1 или POST /api/2.0/jobs/run-now в API заданий 2.0.