EXECUTE SERVICE

Important

La fonction de tâches Snowpark Container Services est actuellement disponible en avant-première privée et est soumise aux conditions d’utilisation de l’avant-première disponibles à https://snowflake.com/legal. Contactez votre représentant Snowflake pour plus d’informations.

Démarre une tâche Snowpark Container Services. La tâche s’exécute de manière synchrone ; elle s’achève après la sortie de tous les conteneurs.

Voir aussi :

SYSTEM$GET_JOB_STATUS , SYSTEM$GET_JOB_LOGS

Syntaxe

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> [ , ... ] ) ]
Copy

Paramètres requis

IN COMPUTE POOL compute_pool_name

Spécifie le nom du pool de calcul de votre compte sur lequel le service doit être exécuté.

FROM stage

Spécifie la zone de préparation interne de Snowflake où le fichier de spécification est stocké ; par exemple, @tutorial_stage.

SPECIFICATION_FILE = 'yaml_file_stage_path'

Spécifie le chemin d’accès au fichier de spécification du service sur la zone de préparation ; par exemple, 'some-dir/echo_spec.yaml'.

FROM SPECIFICATION specification_text

Spécifie la spécification du service. Vous pouvez utiliser une paire de signes du dollar ($$) pour délimiter le début et la fin de la chaîne de spécification.

Paramètres facultatifs

EXTERNAL_ACCESS_INTEGRATIONS = ( EAI_name [ , ... ] )

Identifie les destinations externes, sur Internet, auxquelles le service peut accéder. Par défaut, les conteneurs d’application n’ont pas la permission d’accéder à Internet. Vous devez activer l’accès à Internet à l’aide des intégrations d’accès externes (EAIs). Pour plus d’informations, voir Sortie réseau.

Exigences en matière de contrôle d’accès

Un rôle utilisé pour exécuter cette commande SQL doit avoir les privilèges suivants définis au minimum ainsi :

Privilège

Objet

Remarques

USAGE

Pool de calcul

READ

Zone de préparation

C’est à ce stade que la spécification est stockée.

READ

Référentiel d’images

Référentiel d’images référencées par la spécification.

Notez que l’exploitation d’un objet dans un schéma requiert également le privilège USAGE sur la base de données et le schéma parents.

Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.

Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.

Notes sur l’utilisation

  • L’ID de requête que la commande EXECUTE SERVICE renvoie est un identificateur unique pour la tâche de Snowpark Container Services.

    Vous pouvez utiliser cet ID pour récupérer le statut de la tâche (SYSTEM$GET_JOB_STATUS) ou les journaux d’un conteneur de tâche (SYSTEM$GET_JOB_LOGS) pendant que la tâche est en cours.

    Notez que vous pouvez appeler la fonction LAST_QUERY_ID immédiatement après avoir exécuté la commande EXECUTE SERVICE pour capturer l’ID de la tâche de requête pour référence ultérieure. Vous pouvez également utiliser l’interface Web Snowsight pour trouver l’ID de requête de la tâche.

  • Concernant les métadonnées :

    Attention

    Les clients doivent s’assurer qu’aucune donnée personnelle (autre que pour un objet utilisateur), donnée sensible, donnée à exportation contrôlée ou autre donnée réglementée n’est saisie comme métadonnée lors de l’utilisation du service Snowflake. Pour plus d’informations, voir Champs de métadonnées dans Snowflake.

Exemples

Créer une tâche Snowpark Container Services :

EXECUTE SERVICE
  IN COMPUTE POOL tutorial_compute_pool
  FROM @tutorial_stage
  SPECIFICATION_FILE='my_job_spec.yaml';
Copy