Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
Databricks SQL
Параметр конфигурации STATEMENT_TIMEOUT указывает длительность времени ожидания в секундах. Число начинается в начале выполнения инструкции SQL. Любой запрос Databricks SQL, время выполнения которого превышает заданное значение, завершится по тайм-ауту.
Этот параметр можно задать в трех областях:
- Сеанс: применяется к операторам в текущем сеансе. Используйте инструкциюSET.
- Хранилище (бета-версия): применяется ко всем операторам, которые выполняются в определенном хранилище SQL. Используйте API хранилищ SQL.
- Рабочая область: применяется ко всем хранилищам SQL в рабочей области. Используйте параметры администратора рабочей области или API хранилищ SQL.
Настройка
Задайте значение времени ожидания в секундах от 0 до 172800 секунд (2 дня). Любая инструкция Databricks SQL, которая имеет время выполнения, превышающее заданное значение, останавливается.
Системное значение по умолчанию
Системное значение по умолчанию — 172800 секунд (2 дня).
Приоритет
Если время ожидания задано в нескольких областях, первое значение, отличное от NULL, применяется в следующем порядке:
- Session
- Склад (бета-версия)
- Workspace
Если время ожидания не задано в какой-либо области, системная система применяется по умолчанию .
Примеры
В следующем примере устанавливается время ожидания на уровне сеанса, а затем сбрасывается.
-- Set a session-level timeout
> SET STATEMENT_TIMEOUT = 86400;
> SELECT * FROM DIAMONDS;
-- Reset the timeout duration
> RESET STATEMENT_TIMEOUT;
> SELECT * FROM DIAMONDS;
Чтобы задать время ожидания на уровне рабочей области, перейдите к параметрам администратора рабочей области, щелкните Вычислительные, а затем щелкните Управление рядом с хранилищами SQL. В настройках параметров конфигурации SQL добавьте параметр конфигурации, в котором значение тайм-аута указано в секундах.
-- Set a workspace-level timeout
> STATEMENT_TIMEOUT 86400
Время ожидания на уровне хранилища
Вы можете задать время ожидания инструкции в одном хранилище SQL, чтобы разные склады могли применять различные тайм-ауты к их запросам. Например, задайте более длительное время ожидания для хранилища ETL и более короткое время ожидания в хранилище бизнес-аналитики.
Important
Время ожидания инструкций уровня хранилища находятся в бета-версии. Администратор рабочей области должен включить предварительную версию времени ожидания инструкции хранилища на странице "Предварительные версии ". См. статью "Управление предварительными версиями Azure Databricks".
Задайте время ожидания на уровне хранилища с statement_timeout полем в API создания или обновления хранилища. Значение составляет в секундах. Чтобы удалить время ожидания на уровне хранилища, задайте для поля значение 0.
При изменении statement_timeout API хранилища обновлений хранилище автоматически перезапускается, чтобы новое значение вступило в силу.
Чтобы проверить время ожидания, которое в настоящее время действует на подключенном хранилище, выполните следующее:
SET STATEMENT_TIMEOUT;
Замечание
Отключение предварительного просмотра времени ожидания инструкции хранилища не очищает statement_timeout значения, уже заданные на складах. Ранее заданное значение уровня хранилища продолжает применяться до перезапуска хранилища.