EXECUTE SERVICE¶
Wichtig
Das Job-Feature von Snowpark Container Services befindet sich derzeit in der privaten Vorschau und unterliegt den Nutzungsbedingungen für Vorschau-Features unter https://snowflake.com/legal. Weitere Informationen dazu erhalten Sie bei Ihrem Snowflake-Ansprechpartner.
Startet einen Snowpark Container Services-Job. Der Job wird synchron ausgeführt, d. h. er wird abgeschlossen, nachdem alle Container beendet wurden.
- Siehe auch:
Syntax¶
EXECUTE SERVICE
IN COMPUTE POOL <compute_pool_name>
{
FROM @<stage>
SPECIFICATION_FILE = '<yaml_file_stage_path>'
|
FROM SPECIFICATION <specification_text>
}
[ EXTERNAL_ACCESS_INTEGRATIONS = ( <EAI_name> [ , ... ] ) ]
Erforderliche Parameter¶
IN COMPUTE POOL compute_pool_name
Gibt den Namen des Computepools in Ihrem Konto an, auf dem der Dienst ausgeführt werden soll.
FROM stage
Gibt den Snowflake-internen Stagingbereich an, in dem die Spezifikationsdatei gespeichert ist, z. B.
@tutorial_stage
.SPECIFICATION_FILE = 'yaml_file_stage_path'
Gibt den Pfad zur Dienstspezifikationsdatei im Stagingbereich an, z. B.
'some-dir/echo_spec.yaml'
.FROM SPECIFICATION specification_text
Gibt die Dienstspezifikation an. Sie können doppelte Dollarzeichen (
$$
) verwenden, um den Anfang und das Ende der Spezifikationszeichenfolge abzugrenzen.
Optionale Parameter¶
EXTERNAL_ACCESS_INTEGRATIONS = ( EAI_name [ , ... ] )
Gibt die Namen der Integrationen für den externen Zugriff an, die Ihrem Job den Zugriff auf externe Sites ermöglichen. Bei den Namen in dieser Liste wird zwischen Groß- und Kleinschreibung unterschieden. Standardmäßig haben Anwendungscontainer keine Berechtigung für den Zugriff auf das Internet. Wenn Sie Ihrem Job den Zugriff auf eine externe Site ermöglichen möchten, erstellen Sie eine Integration für den externen Zugriff (External Access Integration, EAI), und konfigurieren Sie dann Ihren Job für die Verwendung dieser Integration. Weitere Informationen dazu finden Sie unter Ausgehender Netzwerk-Datenverkehr.
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens die folgenden Berechtigungen haben:
Berechtigung |
Objekt |
Anmerkungen |
---|---|---|
USAGE |
Computepool |
|
READ |
Stagingbereich |
Dies ist der Stagingbereich, in dem die Spezifikation gespeichert ist. |
READ |
Image-Repository |
Repository von Images, auf die in der Spezifikation verwiesen wird. |
Beachten Sie, dass für die Bearbeitung eines Objekts in einem Schema auch die Berechtigung USAGE für die übergeordnete Datenbank und das Schema erforderlich ist.
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.
Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.
Nutzungshinweise¶
Die Abfrage-ID, die der Befehl EXECUTE SERVICE zurückgibt, ist ein eindeutiger Bezeichner für den Snowpark Container Services-Job.
Sie können diese ID verwenden, um den Jobstatus (SYSTEM$GET_JOB_STATUS) oder Protokolle aus einem Jobcontainer (SYSTEM$GET_JOB_LOGS) abzurufen, während der Job ausgeführt wird.
Beachten Sie, dass Sie die Funktion LAST_QUERY_ID unmittelbar nach dem Ausführen des Befehls EXECUTE SERVICE aufrufen können, um die ID des Abfragejobs für eine spätere Referenz zu erfassen. Sie können auch die Snowsight-Weboberfläche verwenden, um die Abfrage-ID des Jobs zu ermitteln.
Metadaten:
Achtung
Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.
Beispiele¶
Erstellen Sie einen Snowpark Container Services-Job:
EXECUTE SERVICE
IN COMPUTE POOL tutorial_compute_pool
FROM @tutorial_stage
SPECIFICATION_FILE='my_job_spec.yaml';