Exécution de notebooks dans Workspaces à l’aide de SQL

Snowsight prend en charge l’exécution non interactive (sans tête) des notebooks. Cela vous permet de déclencher une exécution programmatique d’un notebook sans ouvrir Snowsight et sans avoir besoin d’un calendrier récurrent.

L’exécution sans tête est destinée aux tâches, aux tâches planifiées ou aux workflows orchestrés par des outils tels que Airflow, Prefet, Dagter, les pipelines CI/CD ou les systèmes externes qui doivent exécuter un notebook de manière programmatique.

Créer un projet de notebook

Si un projet de notebook n’existe pas encore, créez-en un à l’aide de la commande CREATE NOTEBOOK PROJECT :

CREATE NOTEBOOK PROJECT <database_name>.<schema_name>.<project_name>
  FROM 'snow://workspace/<workspace_path>'
  COMMENT = 'Notebook project for this workflow';
Copy

Pour trouver le chemin de l’espace de travail :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. Sélectionnez l’espace de travail.

  4. Sélectionnez l’icône représentant une épingle.

  5. Copiez l’emplacement (par exemple, snow://workspace/USER$.schema."workspacename"/versions/head).

Exécuter un notebook à l’aide de SQL

Vous pouvez exécuter un notebook à partir d’une feuille de calcul, d’un fichier SQL ou de tout client SQL utilisant la commande EXECUTE NOTEBOOK PROJECT :

EXECUTE NOTEBOOK PROJECT <database_name>.<schema_name>.<project_name>
  MAIN_FILE = '<notebook_file_name>.ipynb'
  COMPUTE_POOL = '<compute_pool_name>'
  RUNTIME = '<runtime_version>'      -- e.g., 'V2.2-CPU-PY3.12'
  QUERY_WAREHOUSE = '<warehouse_name>'
  EXTERNAL_ACCESS_INTEGRATIONS = ('<integration_name>');
Copy

Exemple

EXECUTE NOTEBOOK PROJECT "sales_detection_db"."schema"."DEFAULT_PROJ_B32BCFD4"
  COMPUTE_POOL = "test_X_CPU"
  MAIN_FILE = 'notebook_file.ipynb'
  RUNTIME = 'V2.2-CPU-PY3.10'
  QUERY_WAREHOUSE = "ENG_INFRA_WH"
  EXTERNAL_ACCESS_INTEGRATIONS = ('test_EAI');
Copy

Affichage des exécutions

Cette commande exécute le notebook et ses dépendances en utilisant la version stockée dans le projet de notebook associé. Pour voir les résultats de l’exécution, accédez au projet de notebook sous la base de données et le schéma correspondants dans Snowsight.