Поделиться через


Выполнение заданий по расписанию или непрерывно

Вы можете периодически запускать задание Azure Databricks с типом запланированного триггера или обеспечить всегда активный запуск задания с типом непрерывного триггера.

Вы можете использовать расписание для автоматического запуска задания Azure Databricks в указанные времена и периоды. Вы можете определить расписание выполнения задания по минутам, почасовой, ежедневной, еженедельной или ежемесячной и в указанное время. Вы также можете указать часовой пояс для расписания и приостановить запланированное задание в любое время.

При выполнении задания с непрерывным триггером задания Azure Databricks гарантирует, что всегда выполняется одно активное выполнение задания. Запуск нового задания начинается после успешного завершения предыдущего выполнения или с состоянием сбоя или если экземпляр задания в данный момент не запущен.

Добавление расписания заданий

Чтобы настроить расписание для задания, выполните следующие действия:

  1. На боковой панели щелкните "Рабочие процессы".
  2. В столбце "Имя" на вкладке "Задания " щелкните имя задания.
  3. Нажмите кнопку "Добавить триггер" на панели сведений о задании и выберите "Запланированный" в типе триггера.
  4. Укажите период, время начала и часовой пояс. При необходимости установите флажок Показать синтаксис cron, чтобы отобразить и изменить расписание в синтаксисе Quartz Cron.
  5. Нажмите кнопку Сохранить.

Вы также можете запланировать задание записной книжки непосредственно в пользовательском интерфейсе записной книжки.

Примечание.

  • Azure Databricks устанавливает минимальный интервал в 10 секунд между выполнениями, которые запускаются расписанием задания друг за другом, независимо от настройки секунд в выражении cron.
  • Вы можете выбрать часовой пояс с переходом на летнее время или UTC. Если выбрать часовой пояс, который наблюдает летнее время, почасовое задание будет пропущено или может быть отложено на час или два , когда начинается или заканчивается летнее время. Для выполнения раз в час (абсолютное время) выбирайте UTC.
  • Планировщик заданий не предназначен для заданий с низкой задержкой. Из-за проблем с сетью или облаком выполнение задания иногда может быть отложено до нескольких минут. В этих ситуациях запланированные задания выполняются сразу после доступности службы.

Приостановка и возобновление работы расписания заданий

Чтобы приостановить задание, нажмите кнопку "Приостановить " на панели сведений о задании.

Чтобы возобновить приостановленное расписание задания, нажмите кнопку "Возобновить".

Выполнение непрерывного задания

  1. На боковой панели щелкните "Рабочие процессы".
  2. В столбце "Имя" на вкладке "Задания " щелкните имя задания.
  3. Нажмите кнопку "Добавить триггер" на панели сведений о задании, нажмите кнопку "Добавить триггер" на панели сведений о задании, выберите "Непрерывный в типе триггера" и нажмите кнопку "Сохранить".

Чтобы остановить непрерывное задание, нажмите кнопку "Запустить сейчас" и нажмите Blue Down Caretкнопку "Остановить".

Примечание.

  • Существует только один запущенный экземпляр непрерывного задания.
  • Существует небольшая задержка между завершением выполнения и запуском нового запуска. Эта задержка должна быть менее 60 секунд.
  • Нельзя использовать зависимости задач с непрерывным заданием.
  • Нельзя использовать политики повторных попыток с непрерывным заданием. Вместо этого непрерывные задания используют экспоненциальный откат для управления сбоями выполнения задания.
  • При нажатии кнопки "Запустить сейчас " на непрерывном задании, приостановленном запускается новое задание. Если задание неиспользуется, создается исключение.
  • Чтобы непрерывное задание взяло новую конфигурацию задания, отмените существующий запуск, а затем автоматически запускается новый запуск. Вы также можете нажать кнопку " Перезапустить" , чтобы перезапустить задание с обновленной конфигурацией.

Как обрабатываются сбои для непрерывных заданий?

Задания Azure Databricks используют экспоненциальную схему обратного выхода для управления непрерывными заданиями с несколькими последовательными сбоями. Экспоненциальная обратная передача позволяет непрерывным заданиям выполняться без приостановки и вернуться в работоспособное состояние при возникновении сбоев, доступных для восстановления.

Если непрерывное задание превышает допустимое пороговое значение для последовательных сбоев, в следующем описано, как выполняются последующие запуски заданий:

  1. Задание перезапущено после периода повтора, заданного системой.
  2. Если следующий запуск задания завершается сбоем, период повтора увеличивается, а задание перезапускается после этого нового периода повтора.
    1. Для каждого последующего сбоя выполнения задания период повтора увеличивается до максимального периода повтора, заданного системой. После достижения максимального периода повтора задание продолжает выполняться с использованием максимального периода повтора. Количество повторных попыток непрерывного задания не ограничено.
    2. Если задание выполняется успешно и запускает новый запуск, или если выполнение превышает пороговое значение без сбоя, задание считается работоспособным, а последовательность отката сбрасывается.

Вы можете перезапустить непрерывное задание в экспоненциальном состоянии обратного выхода в пользовательском интерфейсе заданий или передать идентификатор задания в запрос POST /api/2.1/jobs/run-now в API заданий 2.1 или POST /api/2.0/jobs/run-now в API заданий 2.0.