Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Der STATEMENT_TIMEOUT Konfigurationsparameter gibt eine Timeoutdauer in Sekunden an. Die Anzahl beginnt am Anfang der Ausführung der SQL-Anweisung. Für jede Databricks SQL-Anweisung, deren Laufzeit diesen Wert überschreitet, tritt ein Timeout auf.
Sie können diesen Parameter auf drei Bereiche festlegen:
- Sitzung: Gilt für Anweisungen in der aktuellen Sitzung. Verwenden Sie die SET Anweisung.
- Warehouse (Beta): Gilt für alle Anweisungen, die auf einem bestimmten SQL Warehouse ausgeführt werden. Verwenden Sie die SQL Warehouses-API.
- Arbeitsbereich: Gilt für alle SQL-Lagerhäuser im Arbeitsbereich. Verwenden Sie arbeitsbereichsadministratoreinstellungen oder die SQL Warehouses-API.
Einstellung
Legen Sie einen Timeoutwert in Sekunden fest, der zwischen 0 und 172.800 Sekunden (2 Tage) betragen kann. Jede Databricks SQL-Anweisung, deren Ausführungszeit den festgelegten Wert überschreitet, wird angehalten.
Systemstandard
Der Standardwert beträgt 172.800 Sekunden (2 Tage).
Vorrang
Wenn das Timeout auf mehr als einen Bereich festgelegt wird, gilt der erste Wert ungleich NULL in der folgenden Reihenfolge:
- Sitzung
- Lagerhaus (Beta)
- Workspace
Wenn das Timeout in keinem Bereich festgelegt ist, gilt der Systemstandard .
Beispiele
Im folgenden Beispiel wird ein Timeout auf Sitzungsebene festgelegt und anschließend zurückgesetzt.
-- Set a session-level timeout
> SET STATEMENT_TIMEOUT = 86400;
> SELECT * FROM DIAMONDS;
-- Reset the timeout duration
> RESET STATEMENT_TIMEOUT;
> SELECT * FROM DIAMONDS;
Um ein Timeout auf Arbeitsbereichsebene festzulegen, wechseln Sie zu den Administratoreinstellungen für Arbeitsbereiche, klicken Sie auf Compute, und klicken Sie dann neben SQL-Warehouses auf Verwalten. Fügen Sie in der Einstellung SQL-Konfigurationsparameter einen Konfigurationsparameter hinzu, wobei der Timeoutwert in Sekunden angegeben wird.
-- Set a workspace-level timeout
> STATEMENT_TIMEOUT 86400
Timeout auf Lagerebene
Sie können ein Anweisungstimeout für ein einzelnes SQL-Warehouse festlegen, sodass unterschiedliche Lagerhäuser unterschiedliche Timeouts auf ihre Abfragen anwenden können. Legen Sie z. B. einen längeren Timeout in einem ETL-Lager und einen kürzeren Timeout in einem BI-Lager fest.
Important
Timeouts auf Lagerebene befinden sich in der Betaversion. Ein Arbeitsbereichsadministrator muss die Timeoutvorschau für Warehouse-Anweisungen über die Vorschauseite aktivieren. Siehe Manage Azure Databricks Previews.
Legen Sie einen Timeout auf Lagerebene mit dem Feld in den statement_timeoutAPIs zum Erstellen oder Aktualisieren von Lagerhäusern fest. Der Wert ist in Sekunden angegeben. Um ein Timeout auf Lagerebene zu entfernen, legen Sie das Feld auf 0.
Wenn Sie mit der Update Warehouse-API wechseln statement_timeout , wird das Lager automatisch neu gestartet, sodass der neue Wert wirksam wird.
Führen Sie die folgenden Schritte aus, um das Timeout zu überprüfen, das aktuell für das Lager gilt, mit dem Sie verbunden sind:
SET STATEMENT_TIMEOUT;
Note
Durch das Deaktivieren der Timeoutvorschau für Warehouse-Anweisungen werden die bereits für Lagerhäuser festgelegten Werte gelöscht statement_timeout . Ein zuvor festgelegter Wert auf Lagerebene wird weiterhin angewendet, bis Sie das Lager neu starten.